Сначала опишу ситуацию.
Есть документ (Товар в ремонте). В нем реквизит "СтанРемонта" Тип "Число" (1- Принят, 2- передан в СЦ, 3- Заказано запчасти, 4 - выполнен, 5- выдан клиенту). И так как в журнале все вперемешку я сделал Отчет. Поместил на форму ТаблицуЗначений. Установил флажки, для выбора документы с каким статусом показывать. Повесил на каждый флажок процедуру ПересчитатьТЗ(). Это все красиво работает.
А теперь о проблеме. Чтобы вообще исключить работу в журнале этого документа, а только в отчете, я добавил кнопку создания нового документа в этом отчете. Документ создается но в ТЗ он не появляется до тех пор пока не ПересчитатьТЗ(). Что логично.
Можно как то реализовать чтобы после создания нового документа в отчете запускался автоматически ПересчитатьТЗ()?
И еще вопрос. Можно ли выводить Данные в ТЗ в несколько строк как в ЖурналеДокумментов?
1) Что мешает в обработчике кнопки по созданию документа поставить ПересчитатьТЗ() в конце?
2) Да. Колонка ТЗ, свойство "положение"
volodya1122 @ Сегодня, 11:10 ,
1) Вы перечитываете ТЗ, которую отображаете в ТП? Проверьте существование нового документа в ТЗ, а потом попробуйте ТП.СоздатьКолонки().
2) Тут я ошибся, Таблисчное Поле, конечно. ТЗ не имеет собственного визуального объекта, кроме как ВыбратьСтроку.
Все табличные штуки отображаются через ТабличноеПоле, вот у него в колонках и ищите.
korol1091 @ Сегодня, 11:37 ,
"Моя твоя не понимать....."
Что вы имеете в виду под табличным полем? На форму вставил обычную таблицу значений где и отображаю список нужных мне докумментов.
Да, пересчитываю ТЗ которая отображается на форме.. И когда проверять существование нового документа?
Может можно что-то придумать с Форма.ОбработкаОжидания? Или будет грузить систему?
Оказалось все намного проще.
В документе на стандартную Кнопку "ОК" Повесил свою процедуру записи
Записать();
ОткрытьФорму("Отчет.Ремонты");
Форма.Закрыть();
Процедура ПриПовторномОткрытии()
Обновить(); // пересчет ТЗ
КонецПроцедуры
volodya1122 @ Сегодня, 12:53 http://pro1c.org.ua/index.php?act=findpost&pid=114281
Думаю что и у Вас никаких проблем не будет.
ОМГ, я думал это про восьмерку. Сорри.
korol1091 @ Сегодня, 17:41 ,
Разницы в версиях при сегодняшних возможностях ОС нет.
Можно 8-ю смотреть как там сделано, если есть кто подскажет реализацию методов ))), только подходы реализации и задействование языков разные.
Не скоро еще умрет семерка, все зависит от тех кто ее обслуживает ))).
Мое мнение, 8-ка - объемная и тупая, хотя сами на 8-й Бух учет ведем (с чего и сделал такой вывод).
Связано это только с сопровождением (рук только одна пара), а так сидели бы и далее на 7-ке.
всетаки сдедал через журнал. Повесил нужные отборы... Правда пришлось добавить в документ 8 шт новых реквизитов для осуществления разных отборов.
Sharzem @ 08.07.16, 18:02 ,
Ну да, разницы нет - попробуйте в клюшках выводить ТЗ на форму в две строки, как просил автор.
Да? А теперь попробуйте сделать так, чтобы 1срр-шное Табличное Поле меняло свой размер при разворачивании-сворачивании формы. Получится? Я уже не говорю про кнопку-подложку, пусть будет, хрен с ней.
Но вообще, конечно, прямые запросы + Индексированная таблица - это гениальные штуки. Восьмерочная ТЗ выглядит просто высером имбецилов по сравнению с Индексированной таблицей.
Процедура ПриИзмененииРазмераОкна(ТипСобытия,Ширина,Высота)
Перем ШиринаАтрКн,ЛевоАтр,ЛевоАтр1,ШиринаАтр,ВысотаАтр,ВерхАтр,ВерхАтр1;
Атр1 = СоздатьОбъект("АтрибутФормы");
Атр1.УстановитьАтрибут(Форма,"ТаблицаЗнач");
Атр1.ПолучитьКоординаты(ЛевоАтр1,ВерхАтр,ШиринаАтр,ВысотаАтр);
Атр2 = СоздатьОбъект("АтрибутФормы");
Атр2.УстановитьАтрибут(Форма,"кнЗакрыть");
Атр2.ПолучитьКоординаты(,,ШиринаАтрКн);
Атр2.УстановитьКоординаты(ЛевоАтр1+ШиринаАтр-ШиринаАтрКн);
Атр2.ПолучитьКоординаты(,ВерхАтр1,);
Атр2.УстановитьАтрибут(Форма,"ТаблицаДанных");
Атр2.ПолучитьКоординаты(ЛевоАтр,ВерхАтр,,);
лпВысота = ВерхАтр1 - ВерхАтр;
Атр2.УстановитьКоординаты(,,ЛевоАтр1+ШиринаАтр-ЛевоАтр,ВысотаАтр);
КонецПроцедуры
Это идея, но когда на форме 20 элементов, становится грустно.
korol1091 @ Сегодня, 10:25 ,
Класс "Привязки" - и никиких "грустно".
А вообще-то, чтобы рассуждать о предмете, надо его знать.
"Я так думаю..."
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua