Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 сен 2024, 01:27

Работа с временным хранилищем

Автор timovadia, 15 фев 2020, 19:14

0 Пользователей и 1 гость просматривают эту тему.

timovadia

Нужно, чтобы в реквизит формы ЧислоЗаписей выводилось число строк таблицы, получаемой в процедуре СписокПриПолученииДанныхНаСервере (обработчик получения данных).

Не понимаю, как это сделать? Подскажите, пожалуйста.

Вот идеи кода, но он не рабочий.

&НаСервере
Функция ЧислоЗаписейПолучениеНаСервере(АдресВХранилище)
   
    Возврат ПолучитьИзВременногоХранилища(АдресВХранилище);
   
КонецФункции

&НаКлиенте
Процедура СписокПриАктивизацииПоля(Элемент)
   
    АдресВХранилище = ЭтотОбъект.ЧислоЗаписей;
    ЭтотОбъект.ЧислоЗаписей = ЧислоЗаписейПолучениеНаСервере(АдресВХранилище);
   
КонецПроцедуры


&НаСервереБезКонтекста
Процедура СписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
   
    АдресВХранилище = ПоместитьВоВременноеХранилище(
        Строки.Количество()       
    );   
   
КонецПроцедуры

bsn-chita

Важно что вы хотите получить в итоге. Судя по обработчику события СписокПриПолученииДанныхНаСервере вы работаете с динамическим списком. При чем этот обработчик получает не все данные а лишь часть(собственно поэтому список и динамический). В итоге получаемые вами данные будут что то типа того: при первоначальном считывании считалось 45 строк, далее когда пролистали список считалось еще 30 строк и так далее. Вряд ли именно эта информация вас интересует.
Скорее всего вы хотите узнать сколько записей содержится в динамическом списке. При чем с учетом отборов которые мог установить пользователь. А это совершенно другая история.
Если же действительно нужно вытащить Строки.Количество(), то делайте произвольный запрос в который добавляйте поле(0 КАК КоличествоВыводимыхСтрок). Не забудьте поставить галочку использовать всегда. И для того чтобы что то вынести из сервера без контекста заполняйте это поле.

&НаСервереБезКонтекста
Процедура СписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
Для Каждого Строка Из Строки Цикл
Строка.Значение.Данные.КоличествоВыводимыхСтрок = Строки.Количество();
КонецЦикла;
КонецПроцедуры

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск