v7: 2-й параметр метода ПолучитьПериод() #775855


#0 by wmonref
День добрый. Есть следующая коннструкция: Суть: Использую 2-й параметр метода ПолучитьПериод - значение даты начала периода, на который нужно спозиционироваться - который позволяет получить периоды на конкретную дату. Хочу получить документы от последнего к первому, т.е. в обратном порядке. Все работает, однако есть одно "но". Если на определенную дату (текПериод) есть несколько документов то выборка получает только первый документ. Собственно вопрос: как получить все документы за текПериод?
#1 by Builder
Продам СП, дорого. ПолучитьПериод(<?>,) Синтаксис: ПолучитьПериод(<Номер>,<ДатаНачалаПериода>) Назначение: Получить из выборки следующий период. Выборка должна быть предварительно открыта при помощи метода ''ВыбратьПериоды''. Возвращает 1 - следующий период выбран успешно;  0 - следующий период не выбран (отсутствует). Метод как бы намекает на использование его в цикле.
#2 by NikVars
У тебя нет выборки по периодам. Ты выбираешь по операциям.
#3 by Builder
В данном случае "Операция" и есть период, тут все правильно. ТС нужны документы. Но код обработки странноватый...
#4 by wmonref
Попробуйте, пожалуйста, выполнить этот код :
#5 by Builder
Я похож на тестировщика? Зачем мне выполнять чужой г..нокод? Зафига тут цикл по периодам? Какой тайный смысл обработки?
#6 by wmonref
А что-ж вы так занервничали?? Дело в том что если использовать ПолучитьПериод(, текПериод) в цикле то получается бесконечный цикл... Объясню смысл данной обработки: требуется найти некоторые товары и получить для них дату и номер последнего документа прих. накладная (для этого и нужно "обратное получение периода"). Сейчас использую обработку типа: что, естественно, не есть хорошо...   Вот и хочу оптимизировать работу программы
#7 by wmonref
Ап
#8 by zenik
Запросом и быстрее и красивше...
#9 by Абыр
Если вам нужен только последний документ, тогда чем вас не устраивает ? а в у вас бесконечный цикл, потому что вы сами его заложили в код
#10 by wmonref
Код из поста работает нормально, но! Если на определенную дату (текПериод) есть несколько документов то в выборку попадает только первый документ, тот что в начале дня, а если прих. накладная записана на конец дня, она не попадает сюда...
#11 by Абыр
обратного порядка для выбора периодов не предусмотрели
#12 by wmonref
ОК, поставлю вопрос по другому :) Как получить все документы на <ДатаНачалаПериода> используя метод ПолучитьПериод(<Номер>,<ДатаНачалаПериода>)??? Потому что в "стандартном" использовании этого метода возвращается только первый документ за заданный период...
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С