Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Пытаюсь вызвать процедуру формы документа, что не так, как правильно, как жить с этим)??

Пытаюсь вызвать процедуру формы документа, что не так, как правильно, как жить с этим)??
Я
   General833
 
30.05.18 - 11:43
Можно ли так делать? ИЗ ВНЕШНЕЙ обработки (модуля формы), вызывать процедуру модуля формы документа (уже записаного). Или как равильно должно быть?

КОД:
Процедура  СоздатьДокументУстЦенНоменклатуры(СсылкаДок);
    
    ДокУстЦен = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    ДокУстЦен.Дата = ТекущаяДата();    
    
    ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокУстЦен.ЭтотОбъект, глЗначениеПеременной("глТекущийПользователь"),,,,);
    ДокУстЦен.НеПроводитьНулевыеЗначения = Истина;
    ДокУстЦен.Записать();
    
ФормаДок = ПолучитьФорму("Документ.УстановкаЦенНоменклатуры.ФормаДокумента", новый Структура("Ключ",ДокУстЦен.Ссылка));
    ФормаДок.ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании(СсылкаДок,Перезаполнение=Ложь)    
    ДокУстЦен.Записать(РежимЗаписиДокумента.Проведение);
    
КонецПроцедуры    

ОШИБКА: {ВнешняяОбработка.ВнешняяОбработка2.Форма.Форма.Форма(183)}: Метод объекта не обнаружен (ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании)
    ФормаДок.ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании(СсылкаДок, Истина);
 
 
   shuhard
 
1 - 30.05.18 - 11:44
(0)[как жить с этим]
молча
   General833
 
2 - 30.05.18 - 11:45
))
   МимохожийОднако
 
3 - 30.05.18 - 11:47
(0) Незя..Скопируй в обработку нужные процедуры и пользуйся
   General833
 
4 - 30.05.18 - 11:49
(3) Понял, копирую...
   DrShad
 
5 - 30.05.18 - 11:51
не нужно ничего копировать и не нужно ее вызывать
в процедуре перед открытием есть ее вызов, если 

Если ЗначениеЗаполнено(ПараметрОснование)
       И ТипЗнч(ПараметрОснование) = Тип("ДокументСсылка.ПоступлениеТоваровУслуг") Тогда
   Джинн
 
6 - 30.05.18 - 11:53
Оппять клюшечник?
   ЦиркУехал
 
7 - 30.05.18 - 11:56
(0) в 8.3  у документа 2 модуля.
из одного можно из второго нельзя.
   1Сергей
 
8 - 30.05.18 - 12:00
(7) чёт, мало ты, всего два насчитал :)
   DrShad
 
9 - 30.05.18 - 12:01
(8) +1
   General833
 
10 - 30.05.18 - 12:01
(5) Спасибо, сейчас попробую.
 
 Рекламное место пустует
   ЦиркУехал
 
11 - 30.05.18 - 12:05
(8) у документа 2 Модуля
Модуль объекта и модуль менеджера.
Если Модуль менеджера тогда 

МойСупердок.СделатьВcеНаСвете();
иначе 
объектПроц=РеквизитФормыВЗначение("Объект");
объектПроц.СделатьВcеНаСвете();
и то тока на форме.
КонецЕсли;
   DrShad
 
12 - 30.05.18 - 12:08
(11) да цирк таки уехал (((
   General833
 
13 - 30.05.18 - 12:09
(5) Пардон, что-то туплю, ну есть она ПередОткрытием, а как ее вызвать? Подскажите пож. Что-то голова не соображает сегодня...
   General833
 
14 - 30.05.18 - 12:10
(5) У меня программно, без выбора пользователя, должен создаваться документ...
   General833
 
15 - 30.05.18 - 12:11
(11) Пробую )))
   DrShad
 
16 - 30.05.18 - 12:12
(13) не надо ее вызывать - она сама вызовется, когда форму дока откроешь
   ЦиркУехал
 
17 - 30.05.18 - 12:12
(13) у документа такой нет .

ПередОткрытием стесняюсь спросить чего ??
   ЦиркУехал
 
18 - 30.05.18 - 12:14
(16) ПередОткрытием не вызовется, её просто нет такой :(
   General833
 
19 - 30.05.18 - 12:14
(17) Модуль формы, есть, только, что этим хотели сказать, пока не могу понять..
   General833
 
20 - 30.05.18 - 12:15
Вот кусок кода и этой процедуры:     Если ЗначениеЗаполнено(ПараметрОснование)
       И ТипЗнч(ПараметрОснование) = Тип("ДокументСсылка.ПоступлениеТоваровУслуг") Тогда
        Если НЕ ЗначениеЗаполнено(ПараметрОснование.ТипЦен) Тогда
            ОбщегоНазначения.СообщитьОбОшибке("В документе " + СокрЛП(ПараметрОснование) + " не установлен тип цен! Заполнение невозможно.", Отказ);
            Возврат;
        КонецЕсли;

        Если НЕ ЗначениеЗаполнено(ПараметрОснование.ТипЦен.ТипЦеныНоменклатуры) Тогда
            ОбщегоНазначения.СообщитьОбОшибке("В документе "  + СокрЛП(ПараметрОснование) + " для типа цен " + СокрЛП(ПараметрОснование.ТипЦен) + " не установлен базовый тип цен! Заполнение невозможно.", Отказ);
            Возврат;
        КонецЕсли;

        ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании(ПараметрОснование);
    КонецЕсли;
   ЦиркУехал
 
21 - 30.05.18 - 12:15
(19) все-таки форма ??
хмм
цитата.
У меня программно, без выбора пользователя, должен создаваться документ...
   General833
 
22 - 30.05.18 - 12:18
(21) Я просто, хочу передать параметр (ДокументОснование) в процедуру формы документа (УстановкаЦен).
Сама процедура-
ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании(ПараметрОснование);
   General833
 
23 - 30.05.18 - 12:19
Вот, не пойму, куак это выполнить...
   General833
 
24 - 30.05.18 - 12:19
правильно...
   ЦиркУехал
 
25 - 30.05.18 - 12:21
(24) Заполнение на основании находится в 1 модуле в который не залезешь из обработки.
так что выноси.
   General833
 
26 - 30.05.18 - 12:23
ВСе таки копировать в обработку )))
   General833
 
27 - 30.05.18 - 12:23
(25) Спасибо!
   ЦиркУехал
 
28 - 30.05.18 - 12:23
(22) а  так в чем проблема то ??

найди основание документа и запихай.
ЗаполнитьТабличнуюЧастьПоПоступлениюНаОсновании(ПараметрОснование);
   ЦиркУехал
 
29 - 30.05.18 - 12:24
(27) в реквизитах Есть Документ Основание?
   ЦиркУехал
 
30 - 30.05.18 - 12:27
(28) или надо создать документ с определенным основанием?
   General833
 
31 - 30.05.18 - 12:27
(29) Блин, точно! Сейчас попробую...
   DrShad
 
32 - 30.05.18 - 12:28
(25) серьезно?

а как же такой код

УстановкаЦен = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
УстановкаЦен.Заполнить(ДокументОснования);
   General833
 
33 - 30.05.18 - 12:30
(32) ))) Я наверно, сейчас, долго буду смеяться...
 
 
   ЦиркУехал
 
34 - 30.05.18 - 12:32
(32) из Формы не получится .
я просто не понял, что и откуда.
   ЦиркУехал
 
35 - 30.05.18 - 12:33
(33) тебе при создании документа нужно найти какое нить  основание.
и записать в реквизит.
   General833
 
36 - 30.05.18 - 12:39
(35) И такое тоже сейчас попробую...
   General833
 
37 - 30.05.18 - 16:03
(35) Спасибо!


Список тем форума
Рекламное место пустует  Рекламное место пустует
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует