7.7 КонДата = СформироватьПозициюДокумента(Докум,-1) не робит в запросе (((
ТекстЗапроса = "
|Период С НачДата По КонДата;
|ФирмаРег = Регистр.ПартииНаличие.Фирма;
|Номенклатура = Регистр.ПартииНаличие.Номенклатура;
|ПриходныйДокумент = Регистр.ПартииНаличие.Партия.ПриходныйДокумент;
|МОЛ = Регистр.ПартииНаличие.МОЛ;
|КоличествоРег = Регистр.ПартииНаличие.Количество;
|СуммаРег = Регистр.ПартииНаличие.СуммаРуб;
|Группировка Номенклатура Без Групп;
|Группировка ПриходныйДокумент;
|Функция ПриходКолВо = Приход(КоличествоРег);
|Функция Количество = КонОст(КоличествоРег);
|Функция Сумма = КонОст(СуммаРег);
|Условие (ФирмаРег = Фирма);
|Условие (МОЛ = вСклад);
|Условие (Номенклатура в СписокНоменклатура);";
Фирма = Докум.Фирма;
НачДата = ДобавитьМесяц(Докум.ДатаДок,-24);
//КонДата = Докум.ДатаДок-1; //ТАК РАБОТАЕТ
КонДата = СформироватьПозициюДокумента(Докум,-1); // А ТАК НЕТ!
//СформироватьПозициюДокумента(Докум,-1);// Мин(СформироватьПозициюДокумента(Докум,-1),ПолучитьПозициюТА());
//сообщить(КонДата);
Запрос = СоздатьОбъект("Запрос");
ПоказатьОтветы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
3.
Гость
12.12.23 23:23
Добрый день!
Если вопрос о строке КонДата = СформироватьПозициюДокумента(Докум,-1);
Не работал в 7.7,
но по внешнему виду и сходству с 8.х
обороты в выражении "Период С НачДата По КонДата;" по моему мнению ожидают параметры типа дата, а не момент времени, или всё-таки запрос его может использовать, но некорректно? Есть ли что-то типо границы 1с 8.х с видом границы НеВключая? Чтобы оно выходило на допроведенный момент времени документа
Если вопрос о строке КонДата = СформироватьПозициюДокумента(Докум,-1);
Не работал в 7.7,
но по внешнему виду и сходству с 8.х
обороты в выражении "Период С НачДата По КонДата;" по моему мнению ожидают параметры типа дата, а не момент времени, или всё-таки запрос его может использовать, но некорректно? Есть ли что-то типо границы 1с 8.х с видом границы НеВключая? Чтобы оно выходило на допроведенный момент времени документа
ТИИБ делал толку ноль
между прочим так тоже не работает:
между прочим так тоже не работает:
Д=СоздатьОбъект("Документ");
Д.ОбратныйПорядок(1);
Д.ВыбратьДокументы(Докум.ДатаДок-30,Докум.ПолучитьПозицию());
Д2="";
Пока Д.ПолучитьДокумент() = 1 Цикл
Если Д.ТекущийДокумент()=Докум Тогда
Продолжить;
КонецЕсли;
Сообщить(Д);
Если Д2="" Тогда
Д2=Д.ТекущийДокумент();
КонецЕсли;
КонецЦикла;
Сообщить(Д2);
КонДата = Д2;
Показать
Заработало только вот так:
Д=СоздатьОбъект("Документ");
Д.ОбратныйПорядок(1);
Д.ВыбратьДокументы(Докум.ДатаДок-30,Докум.ПолучитьПозицию());
Д2="";
Пока Д.ПолучитьДокумент() = 1 Цикл
Если Д.ТекущийДокумент()=Докум.ТекущийДокумент() Тогда
Продолжить;
КонецЕсли;
Если Д2="" Тогда
Д2=Д.ТекущийДокумент();
Сообщить(Д2);
КонецЕсли;
КонецЦикла;
КонДата = Д2;
Показать
хз что у вас там не работает.. вы ж даже никакой инфы не привели
.
Прекрасно все работает.
.
.
Докум- реквизит на форме с типовм "Документ".
.
Прекрасно все работает.
.
//*******************************************
Процедура Сформировать()
Фирма = Докум.Фирма;
НачДата = ДобавитьМесяц(Докум.ДатаДок,-24);
КонДата = СформироватьПозициюДокумента(Докум,-1);
Сообщить(КонДата);
ТекстЗапроса = "
|Период С НачДата По КонДата;
|ФирмаРег = Регистр.ПартииНаличие.Фирма;
|Номенклатура = Регистр.ПартииНаличие.Номенклатура;
|ПриходныйДокумент = Регистр.ПартииНаличие.Партия.ПриходныйДокумент;
|КоличествоРег = Регистр.ПартииНаличие.Количество;
|СуммаРег = Регистр.ПартииНаличие.СуммаРуб;
|Группировка Номенклатура Без Групп;
|Группировка ПриходныйДокумент;
|Функция ПриходКолВо = Приход(КоличествоРег);
|Функция Количество = КонОст(КоличествоРег);
|Функция Сумма = КонОст(СуммаРег);
|Условие (ФирмаРег = Фирма);
|";
Запрос = СоздатьОбъект("Запрос");
Запрос.Выполнить(ТекстЗапроса);
ТЗ=""; Запрос.Выгрузить(ТЗ,0,0);
ПечатьТЗ(ТЗ,"тест");
КонецПроцедуры
Показать.
Докум- реквизит на форме с типовм "Документ".
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот