Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Всегда пустой Док в ОстаткиОбороты (число прочтений - 401 )
hz
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 4
Зарегистрирован: 21. Ноября 2021
Всегда пустой Док в ОстаткиОбороты
21. Ноября 2021 :: 11:45
Печать  
Имеется Регистр.Взаиморасчеты, Измерения: Клиент, Док. Ресурсы: Сумма. Флаг Быстрая Обработка Движений не установлен
Исходный запрос (работает правильно):

ТекстЗапроса =
           "//{{ЗАПРОС(Сформировать)
           |Период с Дата1 по Дата2;
           |Кл = Регистр.Взаиморасчеты.Клиент;
           |Док = Регистр.Взаиморасчеты.ТекущийДокумент;
           |Сумма = Регистр.Взаиморасчеты.Сумма;
           |Функция СуммаНачОст = НачОст(Сумма);
           |Функция СуммаПриход = Приход(Сумма);
           |Функция СуммаРасход = Расход(Сумма);
           |Функция СуммаКонОст = КонОст(Сумма);";
           Если НулевыеТоже = 1 Тогда
                 ТекстЗапроса = ТекстЗапроса+" Группировка Кл без групп все;";
           Иначе
                 ТекстЗапроса = ТекстЗапроса+" Группировка Кл без групп;";
           КонецЕсли;
           ТекстЗапроса = ТекстЗапроса+" Группировка Док;
           |Условие(Кл в ВыбКл);
           |"//}}ЗАПРОС


Моя попытка его переписать:
           стр = мета.ПолучитьСтрокуИзСЗ(СотрСКлиентами.Контрагенты);
           ТекстЗапроса = "select Рег.Клиент as [Кл $Справочник.Контрагенты], 
           | Рег.Док as [Док $Документ],
           | Рег.СуммаНачальныйОстаток as СуммаНачОст,
           | Рег.СуммаПриход as СуммаПриход,         
           | Рег.СуммаРасход as СуммаРасход,
           | Рег.СуммаКонечныйОстаток as СуммаКонОст
           | from
           | $РегистрОстаткиОбороты.Взаиморасчеты(:НачДата, :КонДата~, Документ , , ,(sp1752 in ("+стр+")),,) as Рег
           | ";
sp1752 - это Клиент
В результате - Док всегда пустой,
P.S, Я не спец по 1С, меня заставили Печаль
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Всегда пустой Док в ОстаткиОбороты
Ответ #1 - 21. Ноября 2021 :: 12:51
Печать  
В исходном запросе нет ничего об измерении Док
Есть
Док = ... ТекущийДокумент - то есть документ движения

Соответственно при указании периодичности Документ для ВТ ОстаткиОбороты в полях появляются поля
ПозицияДокумента - тип char(23); строка в формате date_time_iddoc (8+6+9); существует только в том случае, если указана периодичность Документ;
ВидДокумента - тип int; идентификатор вида документа; существует только в том случае, если указана периодичность Документ.
Ну а дальше из позиции документа + вид документа можно получить документ
  
Наверх
IP записан
 
hz
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 4
Зарегистрирован: 21. Ноября 2021
Re: Всегда пустой Док в ОстаткиОбороты
Ответ #2 - 22. Ноября 2021 :: 09:34
Печать  
Спасибо.
leshik писал(а) 21. Ноября 2021 :: 12:51:
Ну а дальше из позиции документа + вид документа можно получить документ

Как это сделать? Я новичек в 1С, попробовал так:
Доки = СоздатьОбъект("Документ");
Доки.НайтиДокумент(Запрос.Док)
Не находит...
  
Наверх
 
IP записан
 
hz
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 4
Зарегистрирован: 21. Ноября 2021
Re: Всегда пустой Док в ОстаткиОбороты
Ответ #3 - 22. Ноября 2021 :: 12:10
Печать  
Уже разобрался Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать