Имя: Пароль:
1C
1С v8
Запарился с запросом!
0 не_1Снег
 
13.02.13
13:55
В консоли работает нормально такой запрос:

   ВЫБРАТЬ РАЗРЕШЕННЫЕ
       ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто1.Владелец КАК Справочник.Контрагенты) КАК Контрагент,
       ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто1 КАК Справочник.ДоговорыКонтрагентов) КАК ДоговорКонтрагента,
       ХозрасчетныйОстатки.СуммаОстаток КАК Остаток,
       ХозрасчетныйОстатки.Счет КАК СчетУчета
   ИЗ
       РегистрБухгалтерии.Хозрасчетный.Остатки(&Период,
           Счет.ВидыСубконто.ВидСубконто = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры),
           ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры),
           Субконто1.ВидДоговора В
           (ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПокупателем),
               ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СКомиссионером),
               ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СКомитентом))
       И Валюта.Код ЕСТЬ NULL
       И Организация = &Организация) КАК ХозрасчетныйОстатки


А вот в коде программы - не хочет сволоч!

Функция ПолучитьВыборкуДебиторов(ДатаИВремя)
   Запрос = Новый Запрос;
   Запрос.Текст = "
       |ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто1.Владелец КАК Справочник.Контрагенты) КАК Контрагент,
       |    ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто1 КАК Справочник.ДоговорыКонтрагентов) КАК ДоговорКонтрагента,
       |    ХозрасчетныйОстатки.СуммаОстаток КАК Остаток,
       |    ХозрасчетныйОстатки.Счет КАК СчетУчета
       |ИЗ
       |    РегистрБухгалтерии.Хозрасчетный.Остатки(&Период,
       |        Счет.ВидыСубконто.ВидСубконто = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры),
       |        ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры),
       |        Субконто1.ВидДоговора В
       |        (ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПокупателем),
       |            ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СКомиссионером),
       |            ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СКомитентом))
       |    И Валюта.Код ЕСТЬ NULL
       |    И Организация = &Организация) КАК ХозрасчетныйОстатки "
   ;
   Запрос.УстановитьПараметр("Период", ?(ЗначениеЗаполнено(ДатаИВремя), КонецДня(ДатаИВремя) + 1, '00010101'));
   Запрос.УстановитьПараметр("Организация"  , Организация);
   Если Не ЗначениеЗаполнено(Организация) Тогда
       Запрос.Текст = СтрЗаменить(Запрос.Текст, "Организация = &Организация", "");
   КонецЕсли;    
   Возврат Запрос.Выполнить();    
Конецфункции


Вызывается:

   ВыборкаДебиторов = ПолучитьВыборкуДебиторов(ДатаИВремя);
   Таб = ВыборкаДебиторов.Выгрузить();
   ДЗИтогоТекДеб = Число(Таб.Итог("Остаток"));
   ОбластьДебиторскаяЗадолженность.Параметры.ДЗИтогоТек = ДЗИтогоТекДеб;


Говорит:

{ВнешнийОтчет.КассоваяКнига.МодульОбъекта(135)}: Ошибка при вызове метода контекста (Выполнить)
   Возврат Запрос.Выполнить();    
по причине:
{(16, 4)}: Синтаксическая ошибка ")"
И <<?>>) КАК ХозрасчетныйОстатки



В чем причина?
1 Волшебник
 
13.02.13
13:56
Запрос.Текст = СтрЗаменить(Запрос.Текст, "Организация = &Организация", "");

замени на

Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Организация = &Организация", "");
2 не_1Снег
 
13.02.13
13:57
какая нах кассовая книга, у меня свой отчет!
3 Волшебник
 
13.02.13
13:57
(2) ты чо такой дерзкий?
4 Как страшно жить
 
13.02.13
13:58
(3) ты ему не груби ))
5 Explorer1c
 
13.02.13
13:58
(2)Причем тут кассовая книга?!
6 gosn1ck
 
13.02.13
13:58
(2) видимо так называется твой отчет :)
7 не_1Снег
 
13.02.13
13:58
(1)ога!!! спасибо тибе добрый человек!:)