|
|
8.2. БГУ как оптимизировать |
☑ |
|
0
студень
24.11.12
✎
15:21
|
Добрый день, ув. 1сники! подскажите пожалуйста в таком вопросе:
имеется таблица значений(тз), в которой хранятся строки табличной части документа "ОперацияБух". при автоматическом создании документа ОперацияБух, идет проверка - есть ли в базе в документах строчка с таким номером, если есть - изменяется. Все делается через цикл. как правильно организовать проверку и изменение через запрос? код прилагаю
для каждого строка из тз цикл
СтараяБухСправка=Документы.ОперацияБух.Выбрать(строка.дата,строка.дата);
пока СтараяБухСправка.Следующий() цикл
ДокОбъект =СтараяБухСправка.ПолучитьОбъект();
НаборЗаписей =ДокОбъект.Движения.епсбу;
НаборЗаписей.Прочитать();
Для Каждого ИскомаяСтрока ИЗ НаборЗаписей Цикл
если найти(ИскомаяСтрока.Содержание,"##"+строка.номер+"##")>0 тогда
ИзменениеПроводки(ДокОбъект,ИскомаяСтрока, строка);
конецесли;
КонецЦикла;
ДокОбъект.Записать();
КонецЦикла;
конеццикла;
|
|
|
1
Нуф-Нуф
24.11.12
✎
15:22
|
запрос
|
|
|
2
студень
24.11.12
✎
15:30
|
я делаю так:
СтараяБухСправка=Документы.ОперацияБух.Выбрать(строка.дата,строка.дата);
пока СтараяБухСправка.Следующий() цикл
ДокОбъект =СтараяБухСправка.ПолучитьОбъект();
запрос=новый запрос;
запрос.Текст=
"ВЫБРАТЬ
| ЕПСБУ.Период,
| ЕПСБУ.Регистратор,
| ЕПСБУ.СчетДт,
| ЕПСБУ.СчетКт,
| ЕПСБУ.Учреждение,
| ЕПСБУ.Сумма,
| ЕПСБУ.Содержание,
|ИЗ
| РегистрБухгалтерии.ЕПСБУ КАК ЕПСБУ
|ГДЕ
| ЕПСБУ.Регистратор = &Регистратор";
запрос.УстановитьПараметр("Регистратор",ДокОбъект);
результат=запрос.Выполнить();
Для Каждого ИскомаяСтрока ИЗ результат Цикл
если найти(ИскомаяСтрока.Содержание,"##"+строка.номер+"##")>0 тогда
ИзменениеПроводки(ДокОбъект,ИскомаяСтрока, строка);
конецесли;
КонецЦикла;
ДокОбъект.Записать();
КонецЦикла;
конеццикла;
|
|
|
3
студень
24.11.12
✎
15:30
|
ругается, что нельзя выбрать из "Результат"
|
|
|
4
ale-sarin
24.11.12
✎
15:33
|
(3) Потому что "Результат" - это результат запроса, а не таблица значений.
|
|
|
5
Нуф-Нуф
24.11.12
✎
15:34
|
ыыыыыы
|
|
|
6
ale-sarin
24.11.12
✎
15:34
|
+4 И еще в параметр запроса на ссылку передать, а не объект.
|
|
|
7
студень
24.11.12
✎
15:35
|
(4) вот вот. а как правильно сделать, чтобы он изменил проводку?
|
|
|
8
ale-sarin
24.11.12
✎
15:36
|
(7) Самому искать в типовых.
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой