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

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

Заполнить реквизиты в новом документе

Заполнить реквизиты в новом документе
Я
   егаис
 
31.08.18 - 15:08
В обработчике присозданиинасервере() есть команда
    ВзаиморасчетыССотрудникамиФормы.ВедомостьПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);


Как программно ее вызвать, она ссылается на форму объекта.
Делаю через получение формы, не получается



&НаСервере
Процедура ЗаполнитьДокументНаСервере(ДанныеФормы)
    
    Док = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.ВедомостьНаВыплатуЗарплатыВБанк"));// Получаем объект из данных формы ИЛИ

    Док = Документы.ВедомостьНаВыплатуЗарплатыВБанк.СоздатьДокумент();
    
    Отказ = Ложь;
    ВзаиморасчетыССотрудникамиФормы.ВедомостьПриСозданииНаСервере(ДанныеФормы, Отказ, Истина);

    Док.Дата = ТекущаяДата();
    Док.ПериодРегистрации = Дата(2018,08,01);
    Док.СпособВыплаты = Справочники.СпособыВыплатыЗарплаты.Зарплата;
    Док.ПроцентВыплаты = 100;
    Док.Округление = Справочники.СпособыОкругленияПриРасчетеЗарплаты.НайтиПоНаименованию("Без округления");
    
    Зарплата = Док.Зарплата.Добавить();
    Зарплата.КВыплате = 100;
    
    ЗначениеВДанныеФормы(Док,ДанныеФормы);// Кладем обратно в объект формы уже созданный документ

    
    Док.Записать();
    
КонецПроцедуры

&НаКлиенте
Процедура Команда1(Команда)
    
    Форма = ПолучитьФорму("Документ.ВедомостьНаВыплатуЗарплатыВБанк.ФормаОбъекта");
    ДанныеФормы = Форма.Объект; 
    ЗаполнитьДокументНаСервере(ДанныеФормы);
    
КонецПроцедуры


Как передать сюда форму?ВзаиморасчетыССотрудникамиФормы.ВедомостьПриСозданииНаСервере(?????, Отказ, Истина);
 
 
   Cyberhawk
 
1 - 31.08.18 - 15:08
ЭтотОбъект
   егаис
 
2 - 31.08.18 - 15:11
Так не работает    ВзаиморасчетыССотрудникамиФормы.ВедомостьПриСозданииНаСервере(Док.ЭтотОбъект, Отказ, Истина);


{ОбщийМодуль.ВзаиморасчетыССотрудникамиФормыБазовый.Модуль(33)}: Поле объекта не обнаружено (Параметры)
    Если Форма.Параметры.Ключ.Пустая() Тогда
   hhhh
 
3 - 31.08.18 - 15:20
(2) ЭтотОбъект
   егаис
 
4 - 31.08.18 - 15:22
ВзаиморасчетыССотрудникамиФормы.ВедомостьПриСозданииНаСервере(ЭтотОбъект, Отказ, Истина);

Аналогичная ошибка, где туплю?
   hhhh
 
5 - 31.08.18 - 15:24
(4) ну возможно, что ДанныеФормы - это данные формы, а ты думаешь, что Форма
   егаис
 
6 - 31.08.18 - 15:28
(5) это и есть данныеформаструктура
Разве можно передать с клиента Форма.ЭтотОбъект?
   hhhh
 
7 - 31.08.18 - 15:31
(6) юморишь всё?

ладно дарю синтакс-помощник

УправляемаяФорма.ЭтотОбъект (ManagedForm.ThisObject)
УправляемаяФорма (ManagedForm)
ЭтотОбъект (ThisObject)
Использование:

Только чтение.
Описание:

Тип: УправляемаяФорма.
Содержит данную форму. Может быть использовано в модуле формы для получения данной формы и передачи ее в качестве параметра в другие формы, глобальные процедуры и функции и т.д.
   hhhh
 
8 - 31.08.18 - 15:33
то есть Этот объект это вообще не ДанныеФормыСтруктура, о форма. Вообще другой тип ты туда хочешь зафигачить.
   егаис
 
9 - 31.08.18 - 15:38
так, дымит уже
еще раз, это внешняя обработка, так не работает
&НаКлиенте
Процедура Команда1(Команда)
    
    Форма = ПолучитьФорму("Документ.ВедомостьНаВыплатуЗарплатыВБанк.ФормаОбъекта");
    ДанныеФормы = Форма.Объект; 
ФормаЭтотОбъект = Форма.ЭтотОбъект;
    ЗаполнитьДокументНаСервере(ФормаЭтотОбъект, ДанныеФормы); 

КонецПроцедуры

Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:


юморю, не юмору, не догоняю (
   Cyberhawk
 
10 - 31.08.18 - 15:44
Напишешь в личку - могу подключиться и посмотреть. А то ты чт-то накаляешь форум.
 
 Рекламное место пустует
   sitex
 
11 - 31.08.18 - 15:46
(9) Если это с ЗУП там же вроде просто ЭтаФорма передается НаСервере
   Cyberhawk
 
12 - 31.08.18 - 16:00
Так ты и так попадаешь в нужный тебе метод, когда получаешь форму
   Cyberhawk
 
13 - 31.08.18 - 16:00
И завязывай использовать форму объекта, когда тебе надо просто создать документ и записать его в БД
   Cyberhawk
 
14 - 31.08.18 - 16:01
Из другой формы вызвать серверный метод нужной тебе формы не получится, т.к. получить форму ты можешь только на клиенте, и на сервер ее передать можно только контексто
   егаис
 
15 - 31.08.18 - 16:02
понял, спасибо
   Cyberhawk
 
16 - 31.08.18 - 16:04
(11) Он из внешней обработки хочет вызвать метод ОМ, в который передается форма документа. Так низя.
   Cyberhawk
 
17 - 31.08.18 - 16:04
Но, повторю (12), это и не требуется, т.к. все и так ывзывается

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