Обновление строк в табличной части обработки

Форум 1С: Одинэс.Ру

Найти!

Обновление строк в табличной части обработки

Voiten
04.06.2009 - 07:41
Добрый день.
Подскажите, пожалуйста, как правильнее организовать обновление строк в табличной части обработки, при условии, что в данной обработке одновременно работает несколько пользователей. Частота обновлений зависит, допустим, от заданного значения в константах.
Спасибо.
К списку тем 1 > К списку форумов

Интересные темы

odines.ru
24.11.2024 - 12:15
Смотри также:
Выложил небольшую статейку по OLE
Колонтитул
1С 8.1 как проще из одной таблицы получить другую форму таблицы

Re: Обновление строк в табличной части обработки

roma n
1 - 04.06.2009 - 07:43
В данной обработке не может одновременно работать несколько пользователей. Они работают каждый со своей обработкой.
Периодически перечитывай данные из БД.
ЗЫ чего хоть делают-то? Может вместо табличной части обработки использовать табличное поле с источником ДокументСписок/СправочникСписок etc?

Re: Обновление строк в табличной части обработки

Voiten
2 - 04.06.2009 - 07:45
Поясняю - в данной обработке работает несколько диспетчеров, они вводят заявки в разноплановом режиме, поэтому и требуется обновление.

Re: Обновление строк в табличной части обработки

roma n
3 - 04.06.2009 - 07:47
поясню: они работают каждый со своим экземпляром (программным) обработки, каждый "внутри" своего сеанса.
ЗЫ так чем предложение (1) не подходит?

Re: Обновление строк в табличной части обработки

Voiten
4 - 04.06.2009 - 07:50
Допустим сотрудник Федотов ввел заявку на время 12:05. А у сотрудника Ивановой последняя заявка висит на время 12:02. Требуется чтобы у Ивановой табличная часть обновилась примерно через 5 секунд и у нее бы также появилась заявка на 12:05.
 
С данной задачей я сталкиваюсь впервые, поэтому не хватает знаний. Какие функции подскажите мне в помощь?

Re: Обновление строк в табличной части обработки

roma n
5 - 04.06.2009 - 07:51
что есть "Заявка" как объект БД? Документ?

Интересные темы

odines.ru
24.11.2024 - 12:15
Смотри также:
Как обновить БП с 1.5.15.3 до 1.6.14.4 ?
При обновлении слетает аналитика
ПоказатьУровеньГруппировокСтрок не работает.....

Re: Обновление строк в табличной части обработки

Voiten
6 - 04.06.2009 - 07:53
Заявка это Документ в БД.

Re: Обновление строк в табличной части обработки

roma n
7 - 04.06.2009 - 07:57
тогда на форму обработки можно положить таьличное поле, назначив ему источником данных ДокументСписок.Заявка. Поле это будет обновляться с той же частотой, что и обычный журнал документов. Если это частота по каким-то причинам не устраивает - правый клик в режиме предприятия по табличному полю - настройка списка - вкладка прочие

Re: Обновление строк в табличной части обработки

Voiten
8 - 04.06.2009 - 08:01
Понимаешь, зачем создавались табличные поля - для разделения по вкладкам текущих заявок в зависимости от их типа...

Re: Обновление строк в табличной части обработки

roma n
9 - 04.06.2009 - 08:05
(8) "зачем создавались табличные части" ты хотел сказать? Отборы в списках чем не устраивают?

Re: Обновление строк в табличной части обработки

Voiten
10 - 04.06.2009 - 08:09
Именно так. Ну конфигурацию еще до меня разрабатывали и переделывать ее не желательно.

Re: Обновление строк в табличной части обработки

roma n
11 - 04.06.2009 - 08:13
ну ежели не желательно, то и не переделывай :))
Организовать периодическое обновление без переделки всё равно не удастся.
ЗЫ если нужно перечитывать данные из БД для перезаполнения табчастей - тогда ПодключитьОбработчикОжидания()

Re: Обновление строк в табличной части обработки

Voiten
12 - 04.06.2009 - 09:04
ПодключитьОбработчикОжидания() - тут все понял, разобрался. Спасибо. Но возникла небольшая проблема - в табличных частях присутствуют поля с кнопками. При нажатии кнопки срабатывает следующий модуль -
 
Процедура ЗаказыПринятыеПриИзмененииФлажка(Элемент, Колонка)
Если ЭлементыФормы.ЗаказыПринятые.ТекущаяКолонка.Имя = "Отказ" Тогда
СтрокаТаблицы = ЭлементыФормы.ЗаказыПринятые.ТекущаяСтрока;
СсылкаНаДокумент = СтрокаТаблицы.Ссылка;
Режим = РежимДиалогаВопрос.ДаНет;
Ответ = Вопрос("Вы подтверждаете отмену заявки", Режим, 0);
Если Ответ = КодВозвратаДиалога.Да Тогда
ДокОбъект = СсылкаНаДокумент.ПолучитьОбъект();
ДокОбъект.СтатусЗаявки = Перечисления.СтатусЗаявки.Отменена;
ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
ВыполнитьОбновление();
Иначе
СтрокаТаблицы.Отказ = Ложь;
Возврат;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
 
Т.е. происходит возможный отказ заявки. Так вот, вкупе с обработчиком ожидания порой происходят такие нюансы как вылет такой ошибки:
 
{Обработка.ОкноРаботыДиспетчера.Форма.Форма(586)}: Ошибка при установке значения атрибута контекста (Отказ): Выполнение операции невозможно, так как строка была удалена.
СтрокаТаблицы.Отказ = Ложь;
 
Как быть?

Re: Обновление строк в табличной части обработки

roma n
13 - 04.06.2009 - 09:12
да кто ж его знает как быть? отсюда не виден прикладной смысл.
Может восстановить строку, а может ничего не делать...

Re: Обновление строк в табличной части обработки

Voiten
14 - 04.06.2009 - 09:12
Вопрос решен. Последующим отключением обработчика ожидания в момент нажатия кнопок.

Re: Обновление строк в табличной части обработки

roma n
15 - 04.06.2009 - 09:20
(14) да не решен у тебя вопрос, поверь :)
Почему? потому что возможна ситуация, что в момент нажатия кнопки (точнее, наверное, в момент установки флажка) этого документа в табличной части УЖЕ не должно было быть (кто-то чего-то в нем поменял), а ты поменяешь обратно.
Муть...

Re: Обновление строк в табличной части обработки

Voiten
16 - 04.06.2009 - 09:24
Теоретически Да, практически врядли - каждый диспетчер курирует только свои заявки...

Re: Обновление строк в табличной части обработки

roma n
17 - 04.06.2009 - 09:28
(16) Встает резонный вопрос: нафига перечитывать данные из БД, если изначально можно отобрать только те данные, изменить которые может исключительно работающий с обработкой "куратор"?

Re: Обновление строк в табличной части обработки

Voiten
18 - 04.06.2009 - 09:38
Конфа - автоматизация таксопарка. Заявки должны быть отображены всем диспетчерам. Но работать с каждой заявкой будет только 1 диспетчер. Но бывают моменты, когда его надо подменить. Но такого, чтобы одну заявку вело несколько диспетчеров, не будет.
К списку тем 1 > К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« Уникальный идентификатор строки табличной части Помогите с получением остатков товара, кое что не могу понять! »
© 2009 Форум 1С: Одинэс.Ру