|
Подскажите пожалуйста как из внешней обработки запустить процедуру документа | ☑ | ||
---|---|---|---|---|
0
nurligaianov
17.08.16
✎
15:51
|
Подскажите пожалуйста как из внешней обработки запустить процедуру документа при изменении
|
|||
1
Горогуля
17.08.16
✎
15:51
|
что за процедура?
|
|||
2
Mankubus
17.08.16
✎
15:51
|
(0) при изменении чего?
|
|||
3
Горогуля
17.08.16
✎
15:53
|
(2) наверное, знака зодиака
|
|||
4
nurligaianov
17.08.16
✎
15:53
|
&НаСервере
Процедура ПриИзмененииСкладаСервер() Склад = Объект.Склад; УстановитьПараметрыВыбораТоварыСклад(); СтруктураОтветственного = ЗакупкиСервер.ПолучитьОтветственногоПоСкладу(Объект.Склад, Объект.Менеджер); Если СтруктураОтветственного <> Неопределено Тогда Объект.Принял = СтруктураОтветственного.Ответственный; Объект.ПринялДолжность = СтруктураОтветственного.ОтветственныйДолжность; КонецЕсли; УстановитьДоступностьКомандыПерезаполнитьПоПриемке(); Если Объект.Товары.Количество() > 0 Тогда МассивУдаляемыхСтрок = Новый Массив(); Если СкладГруппа Тогда СкладыСервер.ЗаполнитьСкладыВТабличнойЧасти(Объект.Склад, СкладГруппа, Объект.Товары, Истина); Для Каждого ТекСтрока Из Объект.Товары Цикл Если (ТекСтрока.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар Или ТекСтрока.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.МногооборотнаяТара) И ЗначениеЗаполнено(ТекСтрока.КодСтроки) И ЗначениеЗаполнено(ТекСтрока.ЗаказПоставщику) И Не ЗначениеЗаполнено(ТекСтрока.Склад) Тогда МассивУдаляемыхСтрок.Добавить(ТекСтрока); КонецЕсли; КонецЦикла; Иначе МассивУдаляемыхСтрок = Новый Массив(); Для Каждого ТекСтрока Из Объект.Товары Цикл Если ЗначениеЗаполнено(ТекСтрока.КодСтроки) И ЗначениеЗаполнено(ТекСтрока.ЗаказПоставщику) И (ТекСтрока.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар Или ТекСтрока.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.МногооборотнаяТара) И Объект.Склад <> ТекСтрока.Склад Тогда МассивУдаляемыхСтрок.Добавить(ТекСтрока); КонецЕсли; КонецЦикла; КонецЕсли; Для Каждого ТекЭлемент Из МассивУдаляемыхСтрок Цикл Объект.Товары.Удалить(ТекЭлемент); КонецЦикла; КонецЕсли; СкладыСервер.ЗаполнитьСкладыВТабличнойЧасти(Объект.Склад, СкладГруппа, Объект.Товары, Истина); ОбновитьИнформациюПоЗаказам(); Элементы.ТоварыЗаполнитьСкладВВыделенныхСтроках.Доступность = СкладГруппа; ПриИзмененииСкладаВТабличнойЧастиСервер(); РассчитатьИтоговыеПоказателиПоступления(ЭтаФорма); ПодготовитьЗаполнитьУстановитьВидимостьСерий(); АктуализироватьЗакупкуПодДеятельность(); Если Не СкладГруппа Тогда Элементы.ТоварыГруппаПолучатель.Заголовок = НСтр("ru = 'Подразделение-получатель'"); Иначе Элементы.ТоварыГруппаПолучатель.Заголовок = НСтр("ru = 'Получатель'"); КонецЕсли; Элементы.ГруппаКартинкаИНадписьНесколькоСкладов.Видимость = СкладГруппа; КонецПроцедуры &НаСервере Процедура НалогообложениеНДСПриИзмененииСервер()Экспорт СтруктураПересчетаСуммы = ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(ЭтаФорма); СтруктураДействий = Новый Структура; СтруктураДействий.Вставить("ЗаполнитьПризнакТипНоменклатуры", Новый Структура("Номенклатура", "ТипНоменклатуры")); СтруктураДействий.Вставить("ЗаполнитьПризнакАртикул", Новый Структура("Номенклатура", "Артикул")); СтруктураДействий.Вставить("ЗаполнитьПризнакАлкогольнаяПродукция", Новый Структура("Номенклатура", "АлкогольнаяПродукция")); СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Объект.НалогообложениеНДС); СтруктураДействий.Вставить("ЗаполнитьСтавкуНДСВозвратнойТары", Объект.ВернутьМногооборотнуюТару); СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы); СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы); СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов"); ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(Объект.Товары, СтруктураДействий, Неопределено); ОбщегоНазначенияУТ.ЗаполнитьДубликатыЗависимыхРеквизитовВКоллекции(Объект.Товары, ЗависимыеРеквизиты()); ПересчитатьСуммуСверхЗаказа(); РассчитатьИтоговыеПоказателиПоступления(ЭтаФорма); УстановитьВидимостьКомандЕГАИС(ЭтаФорма); КонецПроцедуры |
|||
5
Горогуля
17.08.16
✎
15:55
|
(4) умно скопипастить в обработку. умно - ключевое слово
|
|||
6
nurligaianov
17.08.16
✎
15:55
|
но для запуска из обработки внешней по моему без разницы какая процедура
|
|||
7
Горогуля
17.08.16
✎
15:56
|
короче, ты не справишься, если хочешь повторить во внешней обработке интерфейсные приколы
|
|||
8
nurligaianov
17.08.16
✎
15:56
|
А кроме как скопировать не как
|
|||
9
Fish
17.08.16
✎
15:58
|
(8) Тупой копипаст здесь не поможет.
|
|||
10
novichok79
17.08.16
✎
15:58
|
если процедура экспортная:
на клиенте - (5), если из модуля объекта, то надо получитьобъект и потом вызвать эту процедуру. если модуль менеджера, то надо вызывать через менеджер документов если процедура неэкспортная, то только (5) |
|||
11
nurligaianov
17.08.16
✎
15:59
|
(9) Знаю потому и решил найти способ запустить процедуру из обработки
|
|||
12
nurligaianov
17.08.16
✎
16:00
|
Процедура не экспортная в модуле формы документа
|
|||
13
Горогуля
17.08.16
✎
16:01
|
(11) а ты измени склад, она и запустится
|
|||
14
nurligaianov
17.08.16
✎
16:03
|
через обработку она не запустится если программно добавлять
|
|||
15
novichok79
17.08.16
✎
16:04
|
(12) значит копипаст в твою обработку. вангуя могу предположить что есть серверный вариант вызова и желательно прибегнуть к его вызову.
|
|||
16
nurligaianov
17.08.16
✎
16:05
|
(15) как прибегнуть? просто чего только не перепробовал!
|
|||
17
novichok79
17.08.16
✎
16:07
|
(16) посмотреть как аналогичная ситуация обрабатывается на сервере... или в каких-нибудь правилах обмена. тебе все уже сказали, действуй.
|
|||
18
Горогуля
17.08.16
✎
16:07
|
(16) попробуй программиста
|
|||
19
Fish
17.08.16
✎
16:10
|
(16) Цель-то какая у этой обработки? Изменить данные в документе? Так и меняй сами данные документа, при чём здесь вызовы процедур формы документа?
|
|||
20
Fish
17.08.16
✎
16:12
|
+(19) Ну а если меняешь данные у документа, форма которого открыта, и надо, чтобы там отработало твоё изменение данных, используй обработкуоповещения.
|
|||
21
Мыш
17.08.16
✎
16:25
|
(0) Нурлыгаянов, ты с какого города? А то знаю одного такого. )
|
|||
22
nurligaianov
17.08.16
✎
18:14
|
(21) Гоман Олег я вас не знаю как вы можете меня знать?
|
|||
23
nurligaianov
17.08.16
✎
18:29
|
(21) Так что могу предположить что ты знаешь однофамильца
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |