PDA

Просмотр полной версии : Подскажите с кодом пожалуйста!



Михаил38
28.03.2013, 10:49
Подскажите пожалуйста с кодом в моём случае, есть запрос:

ТекстЗапроса ="
|SELECT Month([гсм].[дата]) AS месяц, Year([гсм].[дата]) AS год, гсм.дата, гсм.кодос, Sum(гсм.расход) AS [Sum-расход], Sum(гсм.приход) AS [Sum-приход], [Sum-приход]-[Sum-расход] AS остаток
|FROM гсм
|GROUP BY гсм.дата, гсм.кодос, гсм.кодгсм
|ORDER BY гсм.кодос";

Результат = Новый COMОбъект("ADODB.RecordSet");
Результат.OPEN(ТекстЗапроса,� �оединение,2,3);

Пока Результат.EOF()=0 Цикл
стр=ТабличноеПоле3.Добавит� �();
стр.месяц=Результат.Fields(0).Val ue;
стр.Год=Результат.Fields(1).Value;
стр.Дата=Результат.Fields(2).Value ;
стр.кодОС = справочники.ОсновныеСредс� �ва.НайтиПоКоду(Результат.Fi elds( 3).Value);
стр.Приход=Результат.Fields(5).V alue;
стр.Расход = Результат.Fields(4).Value;
стр.Остаток=Результат.Fields(6) .Value;
///ИИ? стр.НачальныйОстаток= стр.Приход+стр.Остаток-стр.Расход;/////////<<<<<<<<<<--------------------
Результат.MoveNext();
КонецЦикла;
Результат.Close();

Не знаю как правильно написать Условие или Цикл , чтобы стр.Начальный остаток вычислялось автоматически ,если стр.кодОС с ТекущейДатой месяца уже есть в таблице значений но с предыдущей датой месяца, тогда значение Остаток предыдущего месяца, перенести в начальный остаток кодОС ТекущейДаты, иначе =0....
Смысл такой чтобы остатки предыдущего месяца(Стр.остаток) переносились в нач остатки(Стр.НачальныйОстат ок) следующего месяца.
Обработка внешняя , конфигурацию трогать нельзя ))))), ТаблицуЗначений собираю из Access через "ADODB.RecordSet".