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

справочник или таблицЗначений отбор в интервале дат

Автор Nipaaah, 23 дек 2011, 12:54

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

Nipaaah

ВыбратьДокументы(<?>,)
SelectDocuments(<?>,)
Синтаксис:
ВыбратьДокументы(<Дата1>,<Дата2>)
Назначение:
Открыть выборку документов в интервале дат.


а как отобрать например по датам в справочнике или таблицеЗначений?

volodya1122

а разве в справичнике есть реквизит ДатаСправочника (по аналогии с документом).? Справочники не имеют такого реквизита. Если вы добавили в справочник реквизит с датой
Тогда нужно перебором пройтись по всему справочнику и проверять на дату.

Nipaaah

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

volodya1122

в справочнике есть две даты или как.? выражайтесь яснее. телепатов здесь нет

Nipaaah

да 2 даты в этом вся проблема


реквизиты  Дата_начала и Дата_конца

volodya1122

ладно будем вытягывать информацию с Вас по частям, если сразу не желаете все опмсать.
и так в стправочнике есть 2 реквизита ДатаНач и датаКонца.
1. что за справочник? как называется.
2. что именно вам нужно выбрать? Например ДатаНач которых находится между какими то двумя датами, или например ДатаНач находится раньше какой то даты.......

volodya1122

Вот пример кода. Нужно выбрать сотрудников, которые работали в интервале дат Дата1-
Дата2


спр=СоздатьОбъект("Справочник.сотрудники");
Спр.ВыбратьЭлементы(0);
Пока Спр.ПолучитьЭлемент()=1 Цикл   
если пустоеЗначение(спр.ДатаУволн)=1 тогда
датУвол=текущаядата();
иначе                  
датУвол=спр.ДатаУволн;
конецесли;

если ((спр.Датаприема<дата1) и (датУвол>дата1))
или ((спр.Датаприема>=дата1) и (спр.Датаприема<дата2)) тогда
сообщить ("человек работал в интервале дат дата1 - дата2);
конецесли;
    Конеццикла;
[/quote]

Nipaaah

да вы оказались правы, я сам не понимал что хотел)) задание не понятное попалось (((
1 вариант

Если (СпрКонтр.Конец_К>=ВыбНачПериода) and (СпрКонтр.Конец_К<=ВыбКонПериода) then

volodya1122

Правильно заданый вопрос - это уже половина ПРАВИЛЬНОГО решения....

Теги:

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

Рейтинг@Mail.ru

Поиск