Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: И снова запрос!
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
ReDll
Господа! И дамы! Имеем запрос:



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



Выводит все, но не выводит начальный и конечный остаток... Хоть тресни...

З.Ы. 1С 7.7 Бух+Оперативный учет (комплексная)
Vofka
Открыл демо базу ПУБ-а (комплексной щас под рукой нет). Взял регистр ВзаиморасчетыПоставщиков. Следующий текст щапроса показывает всё (и начальный и конечный остаток):


Период с НачДата по КонДата;
Фирма = Регистр.ВзаиморасчетыПокупателей.Фирма;
Контрагент = Регистр.ВзаиморасчетыПокупателей.Контрагент;
Долг = Регистр.ВзаиморасчетыПокупателей.Долг;
ДолгОсн = Регистр.ВзаиморасчетыПокупателей.ДолгОсн;
Функция ДолгНачОст = НачОст(Долг);
Функция ДолгПриход = Приход(Долг);
Функция ДолгРасход = Расход(Долг);
Функция ДолгКонОст = КонОст(Долг);
Функция ДолгОснНачОст = НачОст(ДолгОсн);
Функция ДолгОснПриход = Приход(ДолгОсн);
Функция ДолгОснРасход = Расход(ДолгОсн);
Функция ДолгОснКонОст = КонОст(ДолгОсн);
Группировка Фирма без групп без упорядочивания;
Группировка Контрагент без групп без упорядочивания;


Попробуйте убрать условия вообще и сообщите результат
ЗЫ. Это вовсе не офтоп, поэтому тема переезжает в соответствующий раздел wink.gif
ReDll
Хм, без условий работает.....
Я так понимаю, условия теперь вручную перебирать? sad.gif

Просто дело в том, что мне позарез нужно условие
|Условие(Докум.ВидУчета=Перечисление.ВидыУчета.Торговля);
И мне нужно начальное сальдо....

Или, может, кто нибудь подскажет как в комплексной конфигурации получить сальдо на дату, если:
- документы проводятся по бухгалтерии(счета) по торговле(регистры) и совместный (счета+регистры)

Получается сумма совместных документов попадает и в регистры и в счета...
Vofka
Открыл комплексную конфигурацию 030 релиз (демо).
Там регистра Взаиморасчеты вообще нет! Есть как и в ПУБе ВзаиморасчетыПоставщиков и ВзаиморасчетыПокупателей. Запрос:


Период с ДатаНач по ДатаКон;
Контрагент = Регистр.ВзаиморасчетыПокупателей.Контрагент;
Долг = Регистр.ВзаиморасчетыПокупателей.Долг;
ДолгОсн = Регистр.ВзаиморасчетыПокупателей.ДолгОсн;
Функция ДолгНачОст = НачОст(Долг);
Функция ДолгПриход = Приход(Долг);
Функция ДолгРасход = Расход(Долг);
Функция ДолгКонОст = КонОст(Долг);
Функция ДолгОснНачОст = НачОст(ДолгОсн);
Функция ДолгОснПриход = Приход(ДолгОсн);
Функция ДолгОснРасход = Расход(ДолгОсн);
Функция ДолгОснКонОст = КонОст(ДолгОсн);
Группировка Контрагент без групп без упорядочивания;
Группировка Документ;

Все вытягивает

Цитата
|Условие(Докум.ВидУчета=Перечисление.ВидыУчета.Торговля);

В типовой конфе я не увидел не реквизита ВидУчета не перечисления ВидыУчета.Торговля, поэтому чем смог - тем помог. Дальнейшая помощь вряд ли возможна без Вашей конфигурации.
ReDll
Это не ПУб, это бухгалтерия на которую дописали торговлю... Наверно ничего так не выйдет...

Но такой вопрос, если отбирать по регистру документы по признаку то получается, что по этой выборке начальное сальдо я не получу никак?
То есть сальдо документов с этим признаком на нужную дату...?
Vofka
Цитата
Это не ПУб

Я думал это
Цитата
Бух+Оперативный учет (комплексная)


Цитата
...если отбирать по регистру документы по признаку...

Я сейчас на этот вопрос не отвечу, надо проверять. Но даже если так нельзя, то как вариант можно завести в регистре реквизит и туда "пихать" вид учета
Winter
Цитата(ReDll @ 18.11.09, 20:01) необходимо зарегистрироваться для просмотра ссылки
Господа! И дамы! Имеем запрос:



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



Выводит все, но не выводит начальный и конечный остаток... Хоть тресни...

З.Ы. 1С 7.7 Бух+Оперативный учет (комплексная)


Весь прикол в строке:
|Докум = Регистр.Взаиморасчеты.ТекущийДокумент;

Запрос не выберет начальной/конечной остаток на текущий документ. Если не ошибаюсь, в регистре есть измерение "КредДокумент" - вот на него остатки вытянет. В этом случает можно получить только простыми математическими операциями - нач.остаток по первой группировке, по второй - "плюс" или"минус" по движению документа.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.