Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Сортировка по дате и полу  (Прочитано 6009 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Onishka
Новенький

ru
Offline Offline

« : 21-08-2012 11:08 » 

Здравствуйте, очень нужна Ваша помощь.
Я студент и у меня вот такое задание:
Сформировать список сотрудников (муж., жен., всех(переключатели)) родившихся в указанный интервал с указанием кол-ва детей.

не работает отбор по мужчинам(по остальным еще не делала)  и сортировка по дате рождения, выводит весь список сотрудников и все, помогите разобраться.

Код: (1C v8)
Процедура КнопкаВыполнитьНажатие(Кнопка)

        ТабличныеДанные.Очистить();
    СпрФЗ=справочники.ФизическиеЛица;
        ВыборкаДР=Справочники.ФизическиеЛица.Выбрать(НачПериода,КонПериода);
       
        если ЭлементыФормы.Мужчины.Значение=1 тогда
                отбор=новый структура;
                отбор.вставить("пол","муж");
                отбор.вставить("дети",2);
        ВыборкаСпрФизЛица = СПрфз.Выбрать(,,Отбор);
        Иначе
               
        ВыборкаСпрФизЛица=СПрфз.Выбрать();
               
                КОнецЕсли;
   
        Пока ВыборкаСпрФизЛица.Следующий()=Истина цикл
               
                объект=ВыборкаСпрФизЛица.ПолучитьОбъект();
                        Нов_строка=табличныеДанные.Добавить();
                        Нов_Строка.Фамилия=объект.Имя;
                        Нов_Строка.ДатаРождения=объект.ДатаРождения;
                        Нов_Строка.дети=объект.КоличествоДетей;
                        Нов_строка.пол=объект.пол;
               
        КонецЦикла;
       
       
КонецПроцедуры

Процедура ВыбПериодНажатие(Элемент)
        НастройкаПериода = Новый НастройкаПериода;
        НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода)));
        НастройкаПериода.РедактироватьКакИнтервал = Истина;
        НастройкаПериода.РедактироватьКакПериод = Истина;
        НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
        Если НастройкаПериода.Редактировать() Тогда
                НачПериода = НастройкаПериода.ПолучитьДатуНачала();
                КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
        КонецЕсли;
КонецПроцедуры

1с v8,2
Заранее спасибо, жду помощи.
« Последнее редактирование: 31-08-2012 07:37 от Kivals » Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 31-08-2012 07:40 » new

Переделай это все через запрос - станет намного проще и понятней самому себе. Воспользуйся конструктором запросов на начальном этапе, но не зацикливайся на нем: текст запроса - обычная строка, которую ты можешь менять в программе, например добавляя нужные условия
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines