|
Отбор в методе выбрать() при подключении через OLE |
☑ |
0
Serega103
21.03.13
✎
14:53
|
Подскажите пожалуйста как оптимизировать код:
Реал1=База.Документы.ПоступлениеТоваровУслуг;
Реал=Реал1.Выбрать(НачалоДня(ДатаНач),КонецДня(ДатаКон));
Пока Реал.Следующий() Цикл
Если СокрЛП(Реал.Организация.ИНН)=КФТ Тогда
МояПроцедура();
КонецЕсли;
КонецЦикла;
В том месте где проверяется ИНН организации при проверке замером производительности уходит 90% времени, что сильно затармаживает работу.
Хотелось бы в методе выбрать() задать отбор по организации, но не знаю как передать туда структуру с отбором
|
|
1
Serega103
21.03.13
✎
14:58
|
Вот что хотелось бы получить:
Отб=Новый Структура("Организация",База.Справочники.Организации.НайтиПоРеквизиту("ИНН"),КФТ)
Реал1=База.Документы.ПоступлениеТоваровУслуг;
Реал=Реал1.Выбрать(НачалоДня(ДатаНач),КонецДня(ДатаКон));
Пока Реал.Следующий() Цикл
МояПроцедура();
КонецЦикла;
|
|
2
Serega103
21.03.13
✎
14:59
|
Точнее вот это
Отб=Новый Структура("Организация",База.Справочники.Организации.НайтиПоРеквизиту("ИНН"),КФТ)
Реал1=База.Документы.ПоступлениеТоваровУслуг;
Реал=Реал1.Выбрать(НачалоДня(ДатаНач),КонецДня(ДатаКон),Отб);
Пока Реал.Следующий() Цикл
МояПроцедура();
КонецЦикла;
|
|
3
Defender aka LINN
21.03.13
✎
15:01
|
Патологическая ненависть к запросам, или просто острые клюшки головного мозга?
|
|
4
Serega103
21.03.13
✎
15:02
|
(3)Никогда не пробовал делать запрос к базе через OLE((
Поделитесь пожалуйста, как это делать.
|
|
5
Serega103
21.03.13
✎
15:30
|
ап
|
|
6
Defender aka LINN
21.03.13
✎
15:33
|
(4) Так же, как в обычной базе
|
|
7
Irbis
21.03.13
✎
15:33
|
(4) Надо же когда-то начинать
|
|
8
Kalac
21.03.13
✎
15:37
|
V8 = "";
Сообщить("Подключение к базе УПП " + ПутьКБазе81);
V8 = Новый COMОбъект("V81.ComConnector");
Попытка
// создается объект COM-соединение
Если ЗначениеЗаполнено(Сервер81) Тогда
СтрокаЗапуска = "Srvr="""+ СокрЛП(Сервер81) + """;Ref=""" + СокрЛП(База81) +""";Usr=""" + СокрЛП(Пользователь81) + """;Pwd=""" + СокрЛП(Пароль81)+""";";
Иначе
СтрокаЗапуска = "File="""+ СокрЛП(ПутьКБазе81) + """;Usr=""" + СокрЛП(Пользователь81) + """;Pwd=""" + СокрЛП(Пароль81)+""";";
КонецЕсли;
УПП8 = V8.Connect(СтрокаЗапуска);
Сообщить("Подключение выполнено");
Исключение
Предупреждение(ОписаниеОшибки());
Возврат;
КонецПопытки;
Запрос = Упп8.NewObject("Запрос");
|
|
9
Serega103
21.03.13
✎
16:29
|
(8) |Запрос = Упп8.NewObject("Запрос");
Таким же образом можн создать и объект Структура?
То есть NewObject("Структура")?
|
|