Коллеги, добрый день, подскажите пожалуйста, суть в чем, есть внешняя обработка на форме которой заполняются остатки, после того как остатки заполнены мне надо по определенному алгоритму заменить значение КоличествоОстаток , вся проблема в том что обработка должна выполняться по расписанию, и для этого процедура замены должна выполняться в модуле объекта, а чтобы показать на форме измененные значения мне надо каким-то образом передать на форму данные, как это сделать правильно?
По теме из базы знаний
- Конфигурация "Весовая ред. 3.0" для Платформы 1С 8.3
- Настройки управляемых форм (списков, объектов), заполнение реквизитов по условиям, контроль заполнения, доступ [Расширение]
- Универсальная печатная форма "Анализ объекта" + шаблон подключаемой обработки для 1С на управляемых формах + отладка внешней печатной формы.
- Неочевидные нюансы записи управляемой формы
- Отчеты с общей формой отчета. Типовые сценарии
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Я делаю так, в модуле формы:
ЗначениеФормы = РеквизитФормыВЗначение("Объект");
ЗначениеФормы.ЗаменитьОстатки();
ЗначениеВРеквизитФормы(ЗначениеФормы, "Объект") ;
В модуле объекта экспортная процедура ЗаменитьОстатки(), скорее всего ошибка в том что мне надо обратиться к реквизитам формы и поменять их в модуле объекта, а как обратиться к реквизитам формы?
ЗначениеФормы = РеквизитФормыВЗначение("Объект");
ЗначениеФормы.ЗаменитьОстатки();
ЗначениеВРеквизитФормы(ЗначениеФормы, "Объект") ;
В модуле объекта экспортная процедура ЗаменитьОстатки(), скорее всего ошибка в том что мне надо обратиться к реквизитам формы и поменять их в модуле объекта, а как обратиться к реквизитам формы?
(6)Да связаны, вот код
Где Табло это табличная часть в которой необходимо поменять данные на данные из запроса, в результат все правильно выгружается, а как дальше поменять значения и отобразить их на форме не могу понять, подскажите пожалуйста!
Остатки = Табло.Выгрузить();
Правила = СводнаяТаблицаПравил.Выгрузить();
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Остатки", Остатки);
Запрос.УстановитьПараметр("Правила", Правила);
Запрос.Текст = "ВЫБРАТЬ
| Остатки.Номенклатура КАК Номенклатура,
| Остатки.ОстаткиМакс КАК ОстаткиМакс,
| Остатки.ОстаткиСкладов1 КАК ОстаткиСкладов1,
| Остатки.ОстаткиСУчетомМинСкладов1 КАК ОстаткиСУчетомМинСкладов1,
| Остатки.ОстатокМеньшеМин1 КАК ОстатокМеньшеМин1,
| Остатки.ОстатокПоНДСОрганизации1 КАК ОстатокПоНДСОрганизации1,
| Остатки.ОстатокПоБезНДСОрганизации1 КАК ОстатокПоБезНДСОрганизации1,
| Остатки.ОстатокПоНДСОрганизацииМеньшеМин1 КАК ОстатокПоНДСОрганизацииМеньшеМин1,
| Остатки.ОстатокПоБезНДСОрганизацииМеньшеМин1 КАК ОстатокПоБезНДСОрганизацииМеньшеМин1
|ПОМЕСТИТЬ втОстатки
|ИЗ
| &Остатки КАК Остатки
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| Правила.НазваниеНастройки КАК НазваниеНастройки,
| Правила.Номенклатура КАК Номенклатура,
| Правила.КоличествоБольше КАК КоличествоБольше,
| Правила.КоличествоМеньше КАК КоличествоМеньше,
| Правила.КоличествоДляЗамены КАК КоличествоДляЗамены
|ПОМЕСТИТЬ втПравила
|ИЗ
| &Правила КАК Правила
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| втОстатки.Номенклатура КАК Номенклатура,
| втОстатки.ОстаткиМакс КАК ОстаткиМакс,
| втОстатки.ОстаткиСкладов1 КАК ОстаткиСкладов1,
| втОстатки.ОстаткиСУчетомМинСкладов1 КАК ОстаткиСУчетомМинСкладов1,
| втОстатки.ОстатокМеньшеМин1 КАК ОстатокМеньшеМин1,
| втОстатки.ОстатокПоНДСОрганизации1 КАК ОстатокПоНДСОрганизации1,
| втОстатки.ОстатокПоБезНДСОрганизации1 КАК ОстатокПоБезНДСОрганизации1,
| втОстатки.ОстатокПоНДСОрганизацииМеньшеМин1 КАК ОстатокПоНДСОрганизацииМеньшеМин1,
| втОстатки.ОстатокПоБезНДСОрганизацииМеньшеМин1 КАК ОстатокПоБезНДСОрганизацииМеньшеМин1,
| втПравила.НазваниеНастройки КАК НазваниеНастройки,
| втПравила.КоличествоБольше КАК КоличествоБольше,
| втПравила.КоличествоМеньше КАК КоличествоМеньше,
| втПравила.КоличествоДляЗамены КАК КоличествоДляЗамены,
| ВЫБОР
| КОГДА втОстатки.ОстаткиМакс МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстаткиМакс,
| ВЫБОР
| КОГДА втОстатки.ОстаткиСкладов1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстаткиСкладов1,
| ВЫБОР
| КОГДА втОстатки.ОстаткиСУчетомМинСкладов1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстаткиСУчетомМинСкладов1,
| ВЫБОР
| КОГДА втОстатки.ОстатокМеньшеМин1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстатокМеньшеМин1,
| ВЫБОР
| КОГДА втОстатки.ОстатокПоНДСОрганизации1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстатокПоНДСОрганизации1,
| ВЫБОР
| КОГДА втОстатки.ОстатокПоБезНДСОрганизации1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстатокПоБезНДСОрганизации1,
| ВЫБОР
| КОГДА втОстатки.ОстатокПоНДСОрганизацииМеньшеМин1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстатокПоНДСОрганизацииМеньшеМин1,
| ВЫБОР
| КОГДА втОстатки.ОстатокПоБезНДСОрганизацииМеньшеМин1 МЕЖДУ втПравила.КоличествоБольше И втПравила.КоличествоМеньше
| ТОГДА втПравила.КоличествоДляЗамены
| КОНЕЦ КАК ЗаменаОстатокПоБезНДСОрганизацииМеньшеМин1
|ПОМЕСТИТЬ втЗамена
|ИЗ
| втОстатки КАК втОстатки
| ЛЕВОЕ СОЕДИНЕНИЕ втПравила КАК втПравила
| ПО втОстатки.Номенклатура = втПравила.Номенклатура
|ГДЕ
| НЕ втПравила.НазваниеНастройки ЕСТЬ NULL
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| втЗамена.Номенклатура КАК Номенклатура,
| втЗамена.ОстаткиМакс КАК ОстаткиМакс,
| втЗамена.ОстаткиСкладов1 КАК ОстаткиСкладов1,
| втЗамена.ОстаткиСУчетомМинСкладов1 КАК ОстаткиСУчетомМинСкладов1,
| втЗамена.ОстатокМеньшеМин1 КАК ОстатокМеньшеМин1,
| втЗамена.ОстатокПоНДСОрганизации1 КАК ОстатокПоНДСОрганизации1,
| втЗамена.ОстатокПоБезНДСОрганизации1 КАК ОстатокПоБезНДСОрганизации1,
| втЗамена.ОстатокПоНДСОрганизацииМеньшеМин1 КАК ОстатокПоНДСОрганизацииМеньшеМин1,
| втЗамена.ОстатокПоБезНДСОрганизацииМеньшеМин1 КАК ОстатокПоБезНДСОрганизацииМеньшеМин1,
| втЗамена.НазваниеНастройки КАК НазваниеНастройки,
| втЗамена.КоличествоБольше КАК КоличествоБольше,
| втЗамена.КоличествоМеньше КАК КоличествоМеньше,
| втЗамена.КоличествоДляЗамены КАК КоличествоДляЗамены,
| ЕСТЬNULL(втЗамена.ЗаменаОстаткиМакс, 0) КАК ЗаменаОстаткиМакс,
| ЕСТЬNULL(втЗамена.ЗаменаОстаткиСкладов1, 0) КАК ЗаменаОстаткиСкладов1,
| ЕСТЬNULL(втЗамена.ЗаменаОстаткиСУчетомМинСкладов1, 0) КАК ЗаменаОстаткиСУчетомМинСкладов1,
| ЕСТЬNULL(втЗамена.ЗаменаОстатокМеньшеМин1, 0) КАК ЗаменаОстатокМеньшеМин1,
| ЕСТЬNULL(втЗамена.ЗаменаОстатокПоНДСОрганизации1, 0) КАК ЗаменаОстатокПоНДСОрганизации1,
| ЕСТЬNULL(втЗамена.ЗаменаОстатокПоБезНДСОрганизации1, 0) КАК ЗаменаОстатокПоБезНДСОрганизации1,
| ЕСТЬNULL(втЗамена.ЗаменаОстатокПоНДСОрганизацииМеньшеМин1, 0) КАК ЗаменаОстатокПоНДСОрганизацииМеньшеМин1,
| ЕСТЬNULL(втЗамена.ЗаменаОстатокПоБезНДСОрганизацииМеньшеМин1, 0) КАК ЗаменаОстатокПоБезНДСОрганизацииМеньшеМин1
|ИЗ
| втЗамена КАК втЗамена
|ГДЕ
| НЕ втЗамена.ОстаткиСкладов1 ЕСТЬ NULL";
Результат = Запрос.Выполнить().Выгрузить();
ПоказатьГде Табло это табличная часть в которой необходимо поменять данные на данные из запроса, в результат все правильно выгружается, а как дальше поменять значения и отобразить их на форме не могу понять, подскажите пожалуйста!
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот