Имя: Пароль:
1C
1C 7.7
v7: Оле с условием
,
0 blondinka1c
 
23.03.15
20:36
Подскажите, пожалуйста, где глюк. Как только подключаю условие со списком - тут же виснет

Перем СписокКлиентов2014[1] Экспорт;// в Базе 2014

СпрКА_2014=База2014.CreateObject("Справочник.Контрагенты");  

База2014.ExecuteBatch("спКлиентов2014[1] =СоздатьОбъект(""СписокЗначений"")");
спКл = База2014.EvalExpr("спКлиентов2014[1]");
    
ТабРез.ВыбратьСтроки();
Пока ТабРез.ПолучитьСтроку() > 0 Цикл  
Если СпрКА_2014.НайтиПоКоду(ТабРез.Код) = 1 Тогда
    спКл.Доба витьЗначение(СпрКА_2014.ТекущийЭлемент());
КонецЕсли;    
КонецЦикла;
    
ЗапросАП =  База2014.CreateObject("Запрос");
    НачПериода2014=Дата("01.01.2014");
    КонПериода2014=Дата("01.02.2014");
    ТекстЗапроса =
    "//{{ЗАПРОС_АП(Сформировать)
    |Период с '" + НачПериода2014 + "' по '" + КонПериода2014 + "';
    |Контрагент=Регистр.Продажи.Контрагент;
    |СуммаПродажи = Регистр.Продажи.СуммаПродажи;  
    |Функция СуммаРеал = Сумма(СуммаПродажи);
    |Группировка Контрагент упорядочить по Контрагент.Наименование Без групп;
    |"//}}ЗАПРОС    
    ;

    Если спКл.РазмерСписка() > 0 Тогда
        ТекстЗапроса = ТекстЗапроса + "
        |Условие (Контрагент в спКлиентов2014[1]);";  
    КонецЕсли;
23 Злопчинский
 
23.03.15
23:27
Ну и почти во в ех типовых конфигах есть экспортная глРасшифровка
Можно ее юзать
А не майстрячить какие о левые массивы из одного элемента
24 Torquader
 
24.03.15
00:30
Если в базах те же самые элементы (то есть база 2014 это старая копия нашей базы), то список можно туда просунуть через ЗначениеВСтрокуВнутр, если нет, то можно попробовать через ЗначениеВСтроку.
Как вариант - можно в OLE-базе открыть обработку, в прицедуре создания которой написать всё, что нам нужно.
25 DmitryBratsk
 
24.03.15
07:03
(0) Запрос написать в функции в глобальном модуле базы 7.7, которая вернет результат запроса (например, в виде таблицы значений), контрагента передавать текстом, в базе 7.7 уже его искать и подставлять в запрос.

вот пример:

ТЗ = СоздатьОбъект("ТаблицаЗначений");
ИмяСклада = СокрЛП(Склад);
ИмяГруппы = СокрЛП(ГруппаНом);
    
Строка7 = "глПолучитьОстаткиПоСкладу("+ ДатаНач +","+ДатаКон+","""+ ИмяСклада +""","""+ИмяГруппы+""")";
    
ТЗ = v7.evalexpr(Строка7);
26 blondinka1c
 
24.03.15
12:16
не заходит в запрос...........

//в ОЛЕ
Перем спКлиентов2014[1] Экспорт;
//==================================
Функция глЗаполнитьСписокКлиентов(Код)  Экспорт
    СпрКА_2014=СоздатьОбъект("Справочник.Контрагенты");  
спКлиентов2014[1]= СоздатьОбъект("СписокЗначений");
Если СпрКА_2014.НайтиПоКоду(Код) = 1 Тогда
спКлиентов2014[1].ДобавитьЗначение(СпрКА_2014.ТекущийЭлемент());  
    КонецЕсли;
КонецФункции

    ТабРез.ВыбратьСтроки();
    Пока ТабРез.ПолучитьСтроку() > 0 Цикл
        База2014.EvalExpr("глЗаполнитьСписокКлиентов("+ТабРез.Код+")");
    КонецЦикла;
    
    ЗапросАП =  База2014.CreateObject("Запрос");
    НачПериода2014=Дата("01.01.2014");
    КонПериода2014=Дата("01.02.2014");
    ТекстЗапроса =
    "//{{ЗАПРОС_АП(Сформировать)
    |Период с '" + НачПериода2014 + "' по '" + КонПериода2014 + "';
    |Контрагент=Регистр.Продажи.Контрагент;
    |СуммаПродажи = Регистр.Продажи.СуммаПродажи;  
    |Функция СуммаРеал = Сумма(СуммаПродажи);
    |Группировка Контрагент упорядочить по Контрагент.Наименование Без групп;
    |Условие (Контрагент в спКлиентов2014[1]);  
    |"//}}ЗАПРОС    
    ;
27 Ёпрст
 
24.03.15
12:21
(0) всё должно работать
28 Ёпрст
 
24.03.15
12:26
(0) Вылет по таймауту ?


Вот так, работает у вас ?
29 Ёпрст
 
24.03.15
12:27
Запрос = База2014.CreateObject("Запрос");
ТекстЗапроса = "
|Спр = Справочник.Номенклатура.ТекущийЭлемент;
|Условие (Спр в спКлиентов2014[1]);
|Группировка Спр Без Групп;";
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка(1)=1 Цикл
    Сообщить(Запрос.Спр.Наименование);
КонецЦикла;
30 Ёпрст
 
24.03.15
12:28
Это тест на вшивость, что вы правильно заполнили список значений.
31 blondinka1c
 
24.03.15
13:45
вылета нет, не заходит в группировку.
32 blondinka1c
 
24.03.15
13:55
по вашему запросу выдало одного клиента
33 blondinka1c
 
24.03.15
15:21
Одного клиента записало в список, когда в базе ОЛЕ в функции
каждый раз объявляла спКлиентов2014[1]= СоздатьОбъект("СписокЗначений");
Сейчас прописала в ПриНачалеРаботыСистемы()
Запускаю запрос - виснет
ТабРез.ВыбратьСтроки();
    Пока ТабРез.ПолучитьСтроку() > 0 Цикл
        База2014.EvalExpr("глЗаполнитьСписокКлиентов("+ТабРез.Код+")");
    КонецЦикла;

Запрос = База2014.CreateObject("Запрос");
ТекстЗапроса = "
|Спр = Справочник.Номенклатура.ТекущийЭлемент;
|Условие (Спр в спКлиентов2014[1]);
|Группировка Спр Без Групп;";
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка(1)=1 Цикл
    Сообщить(Запрос.Спр.Наименование);
КонецЦикла;

в Оле
//==================================
Функция глЗаполнитьСписокКлиентов(Код)  Экспорт
СпрКА_2014=СоздатьОбъект("Справочник.Контрагенты");  
    Если СпрКА_2014.НайтиПоКоду(Код) = 1 Тогда
        спКлиентов2014[1].ДобавитьЗначение(СпрКА_2014.ТекущийЭлемент());  
        возврат СпрКА_2014.Наименование;
    Иначе
        возврат "дура";
    КонецЕсли;
КонецФункции
34 Simod
 
24.03.15
15:30
35 blondinka1c
 
24.03.15
15:36
по-моему я делаю все как по ссылке
36 Serginio1
 
24.03.15
15:39
Проще использовать Внешний Отчет с ОткрытьФормуМодально и передачей параметров во втором параметре

БД.ОткрытьФормуМодально("Отчет",параметры,ПутьКОбработке_ert");
37 blondinka1c
 
24.03.15
16:05
можно немного подробнее, плиз
38 Ёпрст
 
24.03.15
16:07
(32) по моему? Или по какому ?
39 Ёпрст
 
24.03.15
16:07
тот что у вас в (0).. это тоже мой запрос, немного "переделанный"
40 blondinka1c
 
24.03.15
16:12
это тестовый - он ваш, но не работает
41 Ёпрст
 
24.03.15
16:13
(40) Вот это не работает ?

Не верю!



Перем СписокКлиентосов[1] Экспорт;

В обработине

ОЛЕ.ExecuteBatch("СписокКлиентосов[1] =СоздатьОбъект(""СписокЗначений"")");
м = ОЛЕ.EvalExpr("СписокКлиентосов[1]");
    
Спр = ОЛЕ.CreateObject("Справочник.Контрагенты");
Пока Спр.ПолучитьЭлемент() = 1 Цикл
   Если Спр.ЭтоГруппа()=0 Тогда
    м.ДобавитьЗначение(Спр.ТекущийЭлемент());
   КонецЕсли;
КонецЦикла;
Запрос = ОЛЕ.CreateObject("Запрос");
ТекстЗапроса = "
|Спр = Справочник.Номенклатура.ТекущийЭлемент;
|Условие (Спр в СписокКлиентосов[1]);
|Группировка Спр Без Групп;";
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка(1)=1 Цикл
    Сообщить(Запрос.Спр.Наименование);
КонецЦикла;
42 Ёпрст
 
24.03.15
16:15
+41

в оле базе в глобальничке:
Перем СписокКлиентосов[1] Экспорт;
43 blondinka1c
 
24.03.15
16:15
да
44 Злопчинский
 
24.03.15
16:17
Пристутсвуем на репетиции у Стансилавского
45 Ёпрст
 
24.03.15
16:23
(43) чего да ?
это 100% рабочий код..
46 Ёпрст
 
24.03.15
16:25
Ну, можешь еще сделать как в (36).

Только вот, что (41), что(36) - это всё прошлый век в решении задачи в (0).

Гораздо проще и быстрее - прямой запрос к сторонней базе.
47 Ёпрст
 
24.03.15
16:25
+ если справочники засинхронизированны - еще и поиметь сами объекты, а не только наименования из сторонней базы.
48 Serginio1
 
24.03.15
21:29
(46) Кто бы спорил, но обычно есть еще куча кода (создание документов, замороченный код который нельзи достать одним запросом итд) который проще исполнять во внешней обработке и в ней же и тестировать.
49 blondinka1c
 
24.03.15
21:45
Serginiol, помогите
50 GreyK
 
24.03.15
21:53
(0)
|Контрагент=Регистр.Продажи.Контрагент;
|КодКонтрагента=Регистр.Продажи.Контрагент.Код;
....
|Условие (КодКонтрагента в спКодовКлиентов2014[1]);

Надеюсь всё понятно?
51 Serginio1
 
24.03.15
21:58
(49) Смотри 36
52 Serginio1
 
24.03.15
22:05
(46) Кстати уже забыл когда в последний раз использовал родной 1С кий запрос.
53 blondinka1c
 
24.03.15
22:34
НЕ РАБОТАЕТ, блин!!!!!!!!! не заходит в группировку
// в ОЛЕ
Перем спКлиентов2014[1] Экспорт;
Процедура ПриНачалеРаботыСистемы()
    спКлиентов2014[1]= СоздатьОбъект("СписокЗначений");

////==================================
Функция глЗаполнитьСписокКлиентов(Код)  Экспорт
    СпрКА_2014=СоздатьОбъект("Справочник.Контрагенты");  
    Если СпрКА_2014.НайтиПоКоду(Код) = 1 Тогда
        спКлиентов2014[1].ДобавитьЗначение(СпрКА_2014.ТекущийЭлемент().Код);  
    КонецЕсли;
    возврат "";
КонецФункции

// запрос

ТабРез.ВыбратьСтроки();
    Пока ТабРез.ПолучитьСтроку() > 0 Цикл
        База2014.EvalExpr("глЗаполнитьСписокКлиентов("+ТабРез.Код+")");
    КонецЦикла;
    
    ЗапросАП =  База2014.CreateObject("Запрос");
    НачПериода2014=Дата("01.01.2014");
    КонПериода2014=Дата("01.02.2014");
    ТекстЗапроса =
    "//{{ЗАПРОС_АП(Сформировать)
    |Период с '" + НачПериода2014 + "' по '" + КонПериода2014 + "';
    |Контрагент=Регистр.Продажи.Контрагент;
    |Код=Регистр.Продажи.Контрагент.Код;
    |СуммаПродажи = Регистр.Продажи.СуммаПродажи;  
    |Функция СуммаРеал = Сумма(СуммаПродажи);
    |Группировка Контрагент упорядочить по Контрагент.Наименование Без групп;
    |Условие (Код в спКлиентов2014[1]);  
    |"//}}ЗАПРОС    
    ;
54 Злопчинский
 
24.03.15
22:37
Не выполняется условие и результат запрса пустой
Тупо уже выгрузили бы результат запроса в тз и посиотрели сколько получится строчек
55 Злопчинский
 
24.03.15
22:41
И выкиньте муру

  НачПериода2014=Дата("01.01.2014");
    КонПериода2014=Дата("01.02.2014");

Напишите просто

  НачПериода2014="01.01.2014";
    КонПериода2014="01.02.2014";
56 blondinka1c
 
24.03.15
22:41
может и мура, но прикол в списке
57 Злопчинский
 
24.03.15
22:50
И сугубо частный вопрос
Вы уверены что период включает в себя и весь день первого февраля?
58 GreyK
 
24.03.15
22:50
(56) СписокЗначений не передаются Оле и не принимаются из Оли :)
59 Злопчинский
 
24.03.15
22:51
Причин куча может быть
Запрос возвращает пустую выборку
60 Злопчинский
 
24.03.15
22:52
Нахрена в список добавлять код если проще добавить контрагента
61 Злопчинский
 
24.03.15
22:52
Если совсем все плохо то минутчерез сорок буду дома
Смогу оказать помощь по тимвьюверу
62 blondinka1c
 
24.03.15
22:54
да я уже и код и контрагента добавляла......
63 Злопчинский
 
24.03.15
22:54
Функция найти клиента по коду написана криво
Никак не обрабатывается ситуация когда клиент по коду не нашелся
64 Злопчинский
 
24.03.15
22:58
Блондина блин
Выполни запрос
Результат запроса ВЫГРУЗИ В ТАБЛИЦУЗНАЧЕНИЙ
ПРОВЕРЬ СКОЛЬКО СТРОК ПОЛУЧИТСЯ В ТЗ
Если ноль строк
Тогда
После заполнения списка удостоверится что он не пустой
Удостоверится что за заланный период продаж есть продажи по контрагентам заданным в списке

У меня глубокое чувство что запрос правильно возвращает пустую выборку
65 blondinka1c
 
24.03.15
22:59
Злопчинский блин, есть продажи.
66 Злопчинский
 
24.03.15
23:02
Вызов добавления в список написан проблематично
Код будет воспринят и обрабатываться олебазой не как строка а как число

Список нацденных клиенто для условия окажется пустой
67 Злопчинский
 
24.03.15
23:03
(65) да пофиг
Код проги написан криво и неаккуратно
68 Злопчинский
 
24.03.15
23:05
Пока ТабРез.ПолучитьСтроку() > 0 Цикл
       Кодстрока =?табрез.код
        База2014.EvalExpr("глЗаполнитьСписокКлиентов("""+кодстрока+""")");
    КонецЦикла;
69 Злопчинский
 
24.03.15
23:05
Готовьте тим через пятн мин
70 blondinka1c
 
24.03.15
23:09
А табрез.код у меня действительно число........
71 GreyK
 
24.03.15
23:14
(70) Ты делаешь отбор только по одному контрагенту?
72 blondinka1c
 
24.03.15
23:15
нужно по списку
73 blondinka1c
 
24.03.15
23:20
все!!! УРА!!!
всем БОЛЬШОЕ СПАСИБО!!!!!!!!
74 Злопчинский
 
24.03.15
23:34
(73)  ну и в чем причина была?
Не стесняйся поделись
75 blondinka1c
 
24.03.15
23:40
рано обрадовалась...... но результата добилась. Дело в том, что я закомментировала условие со списком. Запрос заработал, но в запросе делаю отсев на наличие кода в ТабРез.
76 blondinka1c
 
24.03.15
23:42
получается, что делаю запрос по всем контрагентам, но в группировке делаю условие
77 Злопчинский
 
24.03.15
23:43
(75)  еще раз
У тебя криво формируется список
Поэтому когда ты включаешь условие в запрос
По кривому списку получаешь правильный пустой итог запроса
78 blondinka1c
 
24.03.15
23:44
почему криво?
79 Злопчинский
 
24.03.15
23:44
В олебазе справочник контрагентов - какой тип и длина кода?
80 blondinka1c
 
24.03.15
23:44
число
81 Злопчинский
 
24.03.15
23:46
О как
Тогда мне интересно уже почему оно не работает
82 Злопчинский
 
24.03.15
23:48
Конечно было бы хорошо потратить немного времени и по тиму попытаться разобраться в сущности вопроса

Но оно вам видимо не надо
83 blondinka1c
 
25.03.15
00:11
надо!!!! вы хотите весь отчет посмотреть?
84 blondinka1c
 
25.03.15
00:11
интернет отваливается
85 Злопчинский
 
25.03.15
00:28
(83)  да вообщем нет
Зачем весь отчет
Обсуждаемый кусок
86 blondinka1c
 
25.03.15
00:30
сек
87 Злопчинский
 
25.03.15
00:30
Я вообщем сам олю не люблю
И не хоттабыч по ней
Но в е что надо было все успешно запилено
Поэтому и интересно где ж тупняк тут в коде
88 blondinka1c
 
25.03.15
00:33
188 168 898      2000
89 Злопчинский
 
25.03.15
00:35
Сек ща включусь
90 Злопчинский
 
25.03.15
04:36
Фиг его знает что у нас не получалось... видимо ночные работы  бошка не тянет.

все работает как описано выше, сэмулировал полностью пример...
91 Злопчинский
 
25.03.15
04:45
отправил обработочку на почту
в коде
- ТЗ заполнить кодами клиентов (числовыми!)
- подправить в запросе к регистру продаж

Для теста возьми пять-шесть клиентов по которым заведомо есть продажи... - много клиентов не надо!!!

ps
накладывание условия на вхождение в список - существенно удлиянет время выполнения запроса (по оле?). ВЕСЬМА СУЩЕСТВЕННО.
так что если тестовый пример пройдет (а он должен пройти!) - то на рабочем варианте на 600 клиентов - уматаешься ждать\жать кнопку "продолжить" - будет полное впечатление что "зависло"...

и тут как раз воощем получится лучше сделать запрос без условия, а уже в выборке Контрагента выборки проверять на вхождение в список\тз - будет, блин, намного быстрее
92 DrZombi
 
гуру
25.03.15
07:38
(0) Переменная "СписокКлиентов2014" должна быть определена на стороне ОЛЕ БД. А не локально :)
Дата по сути должны быть указана в Формате "10.10.2015", а не так, как у тебя в настройках прописано "10.10.15"

...
И ОЛЕ у 1С 7.7 ЗЛО. Если по какой либо причине запрос не выполнится, то тебе вернут попросту пустой результат :)
93 Ёпрст
 
25.03.15
10:18
(90)
базу у ней на чем хоть ? дбф/скуль ?
94 Злопчинский
 
25.03.15
11:32
(93) а в данном контексте это как вляиеят?
95 Злопчинский
 
25.03.15
11:48
Дбф база
96 Злопчинский
 
25.03.15
11:50
Пустой результат тоже результат смайл
А как победить окошко системы если оля долго занята то вылазит переключится продолжить
Или можно наплевать на это окошко?
Оля в это время все равно дальше считает? Или стоит?
97 Злопчинский
 
25.03.15
11:51
и вот нифига не знал что в оле-запросе в условии список значения нельзя пихать просто в глобпеременную, а надо именно в глобмассив- отчего так?
98 Ёпрст
 
25.03.15
12:14
(96) никак не победить, таймаут 2 минуты
(97) хз, так на селезнёвке решили.

Так у неё запрос всё же выполняется, или нет ?
99 Злопчинский
 
25.03.15
13:02
(98)  выполняется
Но даже для пяти элементов считается долго
100 Ёпрст
 
25.03.15
13:14
Ну, видать в списке мусор.
Измерение в регистре какого типа хоть было ?
101 Злопчинский
 
25.03.15
13:45
Так глубоко в камасутру мы не углубились
Просто добивались чтобы регистр заработал
На мусор в списке непохоже
102 dk
 
25.03.15
13:52
а не по OLE быстро считается?
103 Ёпрст
 
25.03.15
13:52
ну чегож ты самого главного то не посмотрел, что там за структура регистра,
ээх..
104 Злопчинский
 
25.03.15
13:55
(103)  конфа для украины
105 blondinka1c
 
25.03.15
15:33
Оборотный регистр Измерения - ТМЦ, Контрагент, Заказ
Ресурсы   - Кво,Себестоимость,СуммаПродажи,  СуммаРозн
106 Ёпрст
 
26.03.15
10:07
(105) тип какой у измерения контрагент ?
107 Ёпрст
 
26.03.15
10:07
полный текст запроса какой ?
108 Злопчинский
 
26.03.15
10:41
вот из тестовой обработки
на ТИСе тренировал
.
    //эмуляция получения списка клиентов в таблице    
    ТЗ = СоздатьОбъект("ТаблицаЗначений");
    ТЗ.НоваяКолонка("Код");
    //сюда вбить ЧИСЛОВЫЕ КОДЫ НУЖНЫХ КЛИЕНТОВ КОТОРЫЕ ЕСТЬ В ПРОДАЖАХ СТОПУДОВО В УКАЗАННЫЙ ПЕРИОД
    ТЗ.НоваяСтрока(); ТЗ.Код = "00000007";
    ТЗ.НоваяСтрока(); ТЗ.Код = "00000008";
    ТЗ.НоваяСтрока(); ТЗ.Код = "00000009";
    ТЗ.НоваяСтрока(); ТЗ.Код = "00000010";
    ТЗ.НоваяСтрока(); ТЗ.Код = "00001215";    
    
    Оле.глРасшифровка = Оле.CreateObject("СписокЗначений");
    ТЗ.ВыбратьСтроки();
    Пока ТЗ.ПолучитьСтроку() = 1 Цикл
        
        Если олеСпрК.НайтиПоКоду(ТЗ.Код) = 0 Тогда
            Сообщить("не найдено по коду: "+ТЗ.Код);
            Продолжить;
        КонецЕсли;
        Оле.глРасшифровка.ДобавитьЗначение(олеСпрК.ТекущийЭлемент());
    КонецЦикла;    
    
    Сообщить("тест-список-1 формирования списка: "+Лев(Оле.ЗначениеВстроку(Оле.глРасшифровка),150)+"................");
    Оле.ExecuteBatch("глРасшифровка.Выгрузить(глСписокУсловий[1])");
    Сообщить("тест-список-2 формирования списка: "+Лев(Оле.EvalExpr("ЗначениеВстроку(глСписокУсловий[1])"),150)+"................");
    
    Сообщить("тест-запрос-начало: должны вывестись клиенты в табло");
        ЗапросАП = ОЛЕ.CreateObject("Запрос");
        ТекстЗапроса = "
        |Спр = Справочник.Контрагенты.ТекущийЭлемент;
        |Условие (Спр в глСписокУсловий[1]);
        |Группировка Спр Без Групп;
        |";
        
        ЗапросАП.Выполнить(ТекстЗапроса);
        Пока ЗапросАП.Группировка(1)=1 Цикл
            Сообщить(ЗапросАП.Спр.Наименование);
        КонецЦикла;    
        ЗапросАП = "";
    Сообщить("тест-запрос-конец: должны вывестись клиенты в табло");
    
    Сообщить(ТекущееВремя()+": тест-запрос-начало: должны вывестись продажи по каким-то клиентам в табло","i");
        
        ЗапросАП = Оле.CreateObject("Запрос");
        НачПериода2014 = Дата("01.01.2014");
        КонПериода2014 = Дата("31.01.2014");
        
        ТекстЗапроса = "
        |Период с '" + НачПериода2014 + "' по '" + КонПериода2014 + "';
        |Контрагент        = Регистр.Продажи.Покупатель;         
        |СуммаПродажи     = Регистр.Продажи.ПродСтоимость;  
        |Функция         СуммаРеал = Сумма(СуммаПродажи);
        |Группировка     Контрагент упорядочить по Контрагент.Наименование Без групп;
        |Условие (Контрагент в глСписокУсловий[1]);  
        |";    
        
        ЗапросАП.Выполнить(ТекстЗапроса);
        Пока ЗапросАП.Группировка(1)=1 Цикл
            Сообщить(ЗапросАП.Контрагент.Наименование+": продажи = "+ЗапросАП.СуммаРеал);
        КонецЦикла;    
        ЗапросАП = "";
        
    Сообщить(ТекущееВремя()+": тест-запрос-конец: должны вывестись продажи по каким-то клиентам в табло","i");
109 Ёпрст
 
26.03.15
10:46
упорядочить по Контрагент.Наименование

это надо выкидывать в первую очередь
110 Ёпрст
 
26.03.15
10:46
задание даты..впечатляет
111 Злопчинский
 
26.03.15
10:50
(110) а, точно... это я пропустил ;-) копипастил из ветки из нулевого поста... ;-)
112 Злопчинский
 
26.03.15
10:50
(109) ща проверю насколько это критично
113 Злопчинский
 
26.03.15
11:07
у меня вообщем не влияет... но у мну олебаза по сети тянется с другого сервака, поэтому не показатель
114 blondinka1c
 
26.03.15
16:09
в регистре Контрагент - Справочник.Контрагенты
115 Serginio1
 
26.03.15
17:40
(114) Сделай внешний отчет и для начала оттестируй его на локальной базе. А затем его просто подцепить через 36.
Попробуй и тебе сразу станет очень хорошо.
116 blondinka1c
 
26.03.15
17:46
не вижу 36. можете продублировать?
117 ProxyInspector
 
26.03.15
22:53
Вы чего все еще мучаетесь?
Лично когда мне надо такие штуки, то я в семерке пишу экспортную функцию с запросом, а возвращаю набор записей.

РезультатЗапросаОЛЕ = БазаОЛЕ.ПолучитьРезультатЗапроса(ДатаНачала, ДатаКонца, КлиентОЛЕ);
Пока РезультатЗапросаОЛЕ.ГРуппировка("Клиент") <> 0
   ну и так далее
делов на 5 минут.
118 Злопчинский
 
26.03.15
22:55
(117)  ситуевины разные бывают
119 Serginio1
 
27.03.15
16:51
Создала внешний отчет. Протестировала.
В процедуре приОткрытии() Проверила Форма.Параметр из них заполняешь новые реквизиты вызываешь нужный метод а результаты записываешь в Форма.Параметр

Можно использовать СписокЗнчени и результат записывать в него. Вариаций куча
120 Serginio1
 
27.03.15
16:52
Ну и вызвла БД.ОткрытьФормуМодально("Отчет",параметры,ПутьКОбработке_ert");
121 Serginio1
 
27.03.15
16:53
Понятнее будет
БазаОЛЕ.ОткрытьФормуМодально("Отчет",параметры,ПутьКОбработке_ert");
122 blondinka1c
 
27.03.15
17:08
интересно.спасибо