Здравствуйте!
В только начинаю разбираться, так что вопрос юзера.
Помогите разобраться с запросом.
Стоит задача, если при проведении документа "Реализация товаров и услуг" долг контрагента принимает значение что он нам должен, то документ не проводиться, если мы ему должны то соответственно проводиться.
В модуль документа поместил следующий код:

```1c
    Процедура Контроль()
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    Запрос.Текст =
    "Выбрать
    |Контр = Регистр.ВзаиморасчетыСКонтрагентами.Контрагент;
    |Дог = Регистр.ВзаиморасчетыСКонтрагентами.ДоговорКонтрагентавор;
    |Сум = Регистр.ВзаиморасчетыСКонтрагентами.СуммаВзаиморасчетов;
    |Функция СумКонОст = КонОст(Сум);
    |ИЗ
    | РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ВзаиморасчетыСКонтрагентами";
    Запрос = Запрос.Выполнить().Выбрать();
    Долг=Запрос.СумКонОст;
    Если Долг>0 Тогда
    Мы=Долг;
    Нам=0;

    ИначеЕсли Долг<0 Тогда
    Мы=0;
    Нам=-Долг;
    Предупреждение("По данному контрагенту нет предоплаты");
    Отказ=Истина;
    КонецЕсли;
    КонецПроцедуры
```

Ссылку на эту процедуру поместил в процедуру "ПередЗаписью".
при попытке записать документ он выдает сообщение

{Документ.РеализацияТоваровУслуг.МодульОбъекта(5419)}: Ошибка при вызове метода контекста (Выполнить)
 Запрос = Запрос.Выполнить().Выбрать();
по причине:
{(3, 1)}: Ожидается выражение "ВЫБРАТЬ"
<<?>>Дог = Регистр.ВзаиморасчетыСКонтрагентами.ДоговорКонтрагентавор;
---
Если необходимо проверять задолженность перед проведением документа, то надо писать такой код в "обработке проведения" документа. проверку прошел провелся, не прошел не провелся. все просто.
---
апостол,
1. Такие проверки делаются не в процедуре "ПредЗаписью" а в ОбработкаПроведения (иначе будут проблемы :) )
2. Как справедливо сказано в (2) у 7-ке и 8-ки совершенно разные языки запросов (ничего общего). И тут запрос буддет скорее такой (на вскидку)

```1c
    Запрос.Текст =
    "ВЫБРАТЬ
    | ВзаиморасчетыСКонтрагентами.СуммаОстаток
    |ИЗ
    | РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&Дата, Контрагент= &Контрагент) КАК ВзаиморасчетыСКонтрагентами";

    Запрос.УстановитьПараметр("Дата",МоментВремени());
    Запрос.УстановитьПараметр("Контрагент",Контрагент);
```
---
Не надо путать запросы 77 и 8.х
Лучше начать с конструктора запросов.
---
ДоговорКонтрагентавор - точно такое поле есть ? Слово Функция... запрос из 77
---
Вот рабочий код проверки взаиморасчетов

Процедура КнДолгНажатие(Элемент)
 // Вставить содержимое обработчика.
 Запрос = Новый Запрос;
 Запрос.Текст = "ВЫБРАТЬ
                | Взаиморасчеты.Контрагент,
                | Взаиморасчеты.СуммаВзаиморасчетовКонечныйОстаток КАК Долг,
                | Взаиморасчеты.СуммаВзаиморасчетовПриход КАК Реализация,
                | Взаиморасчеты.СуммаВзаиморасчетовРасход КАК Оплата
                |ИЗ
                | РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты(
                | ,
                | &КонецПериода,
                | Период,
                | ,
                | Организация = &Организация И Контрагент = &Контрагент) КАК Взаиморасчеты";
 Запрос.УстановитьПараметр("Организация", Организация);
 Запрос.УстановитьПараметр("Контрагент", Контрагент);
 Запрос.УстановитьПараметр("КонецПериода", Дата);
 Выборка = Запрос.Выполнить().Выбрать();
 Пока Выборка.Следующий() Цикл
  Сообщить("По контрагенту """ + Выборка.Контрагент + """ на " + Дата + "
    |Реализовано на " + Выборка.Реализация + " руб.
    |Оплачено " + Выборка.Оплата + " руб.
    |Долг " + ?(Выборка.Долг < 0, "фирмы", "контрагента") + " " + Выборка.Долг + " руб.");
 КонецЦикла;
КонецПроцедуры
---
попробуйте запустить конструктор запросов на этом запросе.. код 77 и 82 отличается достаточно сильно
---
Если необходимо проверять задолженность перед проведением документа, то надо писать такой код в "обработке проведения" документа. проверку прошел провелся, не прошел не провелся. все просто.
---
такое лучше не на форумах изучать, а через мануалы - быстрее будет
---
Спасибо всем огромное!!!