berezdetsky писал(а) 06. Сентября 2006 :: 11:46:Твой SQL-запрос считает (для данного документа) от конца периода, а стандартный 1С-запрос - всегда от начала. При переполнении ресурса его значение искажается (устанавливается в 9 во всех разрядах). Т.о. результаты запросов 1С и 1С++ на документ во второй половине периода могут не совпадать. При чём документ, переполняющий ресурс, может быть позже расчётного.
Найди и обезвредь документ, переполняющий ресурс "Себестоимость" (если это ещё не сделано), после чего пересчитай итоги.
можно легко проверить твое предположение изменив текст прямого запрос на:
Функция _ПолучитьОстаткиПоТоварам(док, ЮрЛицо, Склад) Экспорт
ТекстЗапроса = "
|SELECT
|рег.Номенклатура AS [Номенклатура $Справочник.Номенклатура],
|рег.КоличествоОстаток AS Количество,
|рег.СебестоимостьОстаток AS Себестоимость
|FROM
|$РегистрОстатки.Товары(:ВыбДата,, ЮрЛицо = :ЮрЛицо AND Склад = :Склад, Номенклатура, (Количество, Себестоимость)) AS рег
|
|";
RS.УстановитьТекстовыйПараметр("ЮрЛицо", ЮрЛицо);
RS.УстановитьТекстовыйПараметр("Склад", Склад);
RS.УстановитьТекстовыйПараметр("ВыбДата", СформироватьПозициюДокумента(док));
тз = RS.ВыполнитьИнструкцию(ТекстЗапроса);
Возврат тз;
КонецФункции
но мне почему то кажется что дело не в этом, хотя именно позициядока-1 меня и смущала с самого начала, но подумав решил что это все равно одно и тоже... хотя могу и ошибаться...