Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> УПП 1.3 Как перебрать только отобранные строки в табличном поле          
alexandr_f Подменю пользователя
сообщение 25.05.16, 8:12
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 192
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Есть отбор в табличном поле.

Процедура РаботникиОрганизацииПриАктивизацииСтроки(Элемент)
    // Вставить содержимое обработчика.
    ТекущаяСтрока = Элемент.ТекущаяСтрока;
    
    Если ТекущаяСтрока = Неопределено Тогда
        мТекущийСотрудник = Неопределено;
        Возврат;
    КонецЕсли;
    
    // запомним текущего сотрудника
    мТекущийСотрудник = ТекущаяСтрока.СотрудникиОрганизаций.ФизЛицо;
    ЭлементыФормы.ВредныеФакторы.ОтборСтрок.ФизическоеЛицо.Использование = Истина;
    ЭлементыФормы.ВредныеФакторы.ОтборСтрок.ФизическоеЛицо.ВидСравнения = ВидСравнения.Равно;
    ЭлементыФормы.ВредныеФакторы.ОтборСтрок.ФизическоеЛицо.Значение = мТекущийСотрудник;

Как теперь перебрать только отобранные строки

sava1 Подменю пользователя
сообщение 25.05.16, 8:17
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

Так просто перебрать - ДляКаждого

alexandr_f Подменю пользователя
сообщение 25.05.16, 8:55
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 192
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

sava1 @ Сегодня, 8:17 *,
Берет Тока первую

sava1 Подменю пользователя
сообщение 25.05.16, 8:56
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

Отбор по равно или сложный?

alexandr_f Подменю пользователя
сообщение 25.05.16, 8:58
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 192
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

По мотивам . Нашел ответ
Построитель = Новый ПостроительЗапроса;
    Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭтотОбъект.ВредныеФакторы); //Здесь отбор если нужно
Для Каждого ЭлементОтбора из ЭлементыФормы.ВредныеФакторы.ОтборСтрок Цикл
    Попытка
    ЗаполнитьЗначенияСвойств(Построитель.Отбор.Добавить(ЭлементОтбора.Имя), ЭлементОтбора);
Исключение
    Сообщить(ОписаниеОшибки());
КонецПопытки;
    
КонецЦикла;
  
Запрос = Построитель.Результат.Выгрузить();
    Для Каждого  Строка ИЗ Запрос  Цикл
    //    ЗапросНабор.УстановитьПараметр("ВредныйФактор",Строка.ВредныйФактор);    
    //    ЗапросНабор.УстановитьПараметр("Физлицо",Строка.СотрудникиОрганизаций.ФизЛицо);             
    //    Результат = ЗапросНабор.Выполнить().Выгрузить();
    //    Включено=ЭлементыФормы.РаботникиОрганизации1.ТекущиеДанные.Включить;
    ////ЕСЛИ Результат.количество()>0 Тогда
    //ПОКА Строка.Следующий()   Цикл
        ЗапросНабор.УстановитьПараметр("ВредныйФактор",Строка.ВредныйФактор);    
        ЗапросНабор.УстановитьПараметр("Физлицо",Строка.СотрудникиОрганизаций.ФизЛицо);             
        Результат = ЗапросНабор.Выполнить().Выгрузить();
        ЕСЛИ Результат.количество()>0 Тогда
            
            Сообщить(Строка.ФизическоеЛицо);
            Сообщить(Строка.ВредныйФактор);
            Строка.ДатаПоследнегоМедосмотра  = Результат[0].ДатаМедосмотра;
            Строка.Следующий= ДобавитьМесяц(Строка.ДатаПоследнегоМедосмотра,Строка.ПериодМесяц);
            Если ГОД(ЭтотОбъект.Период)<ГОД(Строка.Следующий ) Тогда
                Строка.Включить= ЛОЖЬ;
            Иначе
                Строка.Включить= ИСТИНА;
            КонецЕсли;    
        Иначе
            Строка.ДатаПоследнегоМедосмотра  = NULL;
            Строка.Включить= ИСТИНА;
        КонецЕсли;    
    КонецЦикла;


 ! 

Правила: 9
 

Теперь хотя по строка прошел (проверил отладчиком) но изменений в табличном поле нет

Сообщение отредактировал logist - 25.05.16, 10:23

sava1 Подменю пользователя
сообщение 25.05.16, 9:01
Сообщение #6

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

ПроверитьСтроку() у Табличного поля.

Если Отбор простой - выгрузить в ТЗ, пользовать НайтиСтроки(Отбор)

Vofka Подменю пользователя
сообщение 25.05.16, 9:20
Сообщение #7

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

alexandr_f,

 ! 

Правила: 5
 

Скажите, почему вы в описании продублировали название темы, если при создании темы в подсказке и ниже поля ввода написано о том, что туда нужно что-то писать только в случае, если нужно дополнить название темы?

alexandr_f Подменю пользователя
сообщение 25.05.16, 9:45
Сообщение #8

Завсегдатай
****
Группа: Пользователи
Сообщений: 192
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Спасибо. Проблема решена через отбор в массив

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 20.04.24, 1:37
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!