• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Помогите написать запрос на 8.0

  • Автор темы Guest
  • Дата начала
G

Guest

Помогите пожалуйста! Написала функцию для определения д*цензура*а счета на начало периода(счет определяется в другой процедуре). Работает только для субсчета или счета у которого нет субсчетов. Что нужно изменить чтобы работало например для 10 счета?

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

KiR

Не совсем понял что нужно. Если на 10 счете есть Начальный Д*цензура*овый остаток - то он будет в переменной Итог. Если нужна сумма с субсчетов или же с массива счетов то нужно заменить строку:

|ГДЕ
| ХозрасчетныйОстаткиИОбороты.Счет = &Счет";
На
|ГДЕ
| ХозрасчетныйОстаткиИОбороты.Счет В &Счет; // если передается массив счетов
ИЛИ
|ГДЕ
| ХозрасчетныйОстаткиИОбороты.Счет В иерархии &Счет"; // в случае если нужно с субсчетами
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!