Народ помогите есть 2 документа приходная накладная и расходный кассовый для приходной накладной я понял ее движения но для расходно кассового не пойму по чему он мою таблицу значений тбДолги не видит . и она пустая( вот пример
Процедура РассчитатьШапку()
тбДолги = СоздатьОбъект("ТаблицаЗначений");
тбДолги.НоваяКолонка("Фирма",,,,,,,);
тбДолги.НоваяКолонка("Контрагент",,,,,,,);
тбДолги.НоваяКолонка("Договор",,,,,,,);
тбДолги.НоваяКолонка("Счет",,,,,,,);
тбДолги.НоваяКолонка("ВидНДС",,,,,,);
тбДолги.НоваяКолонка("ДокументДолга",,,,,,,);
тбДолги.НоваяКолонка("СуммаОплаты",,,,,,,);
КонецПроцедуры
//*****************************************************
Процедура ДвиженияКредДокумент()
Перем тбДолги;
ВремРегистры = СоздатьОбъект("Регистры");
Рег=ВремРегистры.ВзаиморасчетыПокупателей;
Рег.УстановитьЗначениеФильтра("Фирма",Фирма,1);
Рег.УстановитьЗначениеФильтра("ДокументДолга",ДокументОснование,1);
Рег.УстановитьЗначениеФильтра("ВидНДС",ВидНДС,1);
Если ИтогиАктуальны()=0 Тогда
Рег.ВременныйРасчет();
ВремРегистры.РассчитатьРегистрыНа(ТекущийДокумент());
КонецЕсли;
Рег.ВыгрузитьИтоги(тбДолги,1,1);
СуммаПогашения = СуммаОплаты;
СтавкаНДСПогашения = ВидНДС;
тбДолги.ВыбратьСтроку();
Если ДокументОснование.Выбран()=1 Тогда
Счет = ДокументОснование;
Иначе
Счет = ТекущийДокумент();
КонецЕсли;
глПогашениеДолга(Контекст, тбДолги, Фирма, Контрагент, Договор, ВидНДС, ДокументОснование, СуммаПогашения);
КонецПроцедуры
//и в глобальном ---------------------------------------------------------------------------------------------------------------------
Процедура глПогашениеДолга(Конт, тбДолги, Фирма, Контрагент, Договор, ВидНДС, Счет, СуммаПогашения) Экспорт
ВидДок = Конт.Вид();
тбДолги.ВыбратьСтроки();
Пока тбДолги.ПолучитьСтроку()>0 Цикл
Если тбДолги.СуммаДолга<0 Тогда
Продолжить;
КонецЕсли;
Если СуммаПогашения=0 Тогда
Продолжить;
ИначеЕсли тбДолги.СуммаДолга<=СуммаПогашения Тогда
//полное погашение документа долга
тДокументДолга = тбДолги.ДокументДолга;
тСчет = тбДолги.Счет;
тСуммаПогашения = тбДолги.СуммаДолга;
глПогаситьДокументВзаиморасчетов(Конт,1, Фирма, Контрагент, Договор, ВидНДС, тСчет, тДокументДолга, тСуммаПогашения);
СуммаПогашения = СуммаПогашения - тСуммаПогашения;
ИначеЕсли тбДолги.СуммаДолга > СуммаПогашения Тогда
//частичное погашение
тДокументДолга = тбДолги.ДокументДолга;
тСчет = тбДолги.Счет;
тСуммаПогашения = СуммаПогашения;
глПогаситьДокументВзаиморасчетов(Конт,1, Фирма, Контрагент, Договор, ВидНДС, тСчет, тДокументДолга, тСуммаПогашения);
СуммаПогашения = 0;
КонецЕсли;
Если тбДолги.СуммаОплаты < СуммаПогашения Тогда // Для расходного кассвого
тДокументДолга = тбДолги.ДокументДолга;
тСчет = тбДолги.Счет;
тСуммаПогашения = СуммаПогашения;
глПогаситьДокументВзаиморасчетов(Конт,-1, Фирма, Контрагент, Договор, ВидНДС, тСчет, тДокументДолга, тСуммаПогашения);
КонецЕсли;
КонецЦикла;