Работа с Зарплатой через OLE
23.10.2007
10:57
#1
Подскажите, как при подключении к внешней базе определить группу расчетов через OLE для передачи в запрос
25.10.2007
07:05
#3
"Спасибо, но все равно не работает. Вот пример запроса,конструкция ВходитВГруппу не проходит через соединение.
//////////////
ОсновныеНачисления=База.EvalExpr("ГруппаРасчетов.ОсновныеНачисления");
Запрос = База.CreateObject("Запрос");
ТекстЗапроса = "Период с "+"'"+ НачалоПериода+ "'" + " по "+ "'" + КонецПериода + "'"+";";
ТекстЗапроса = ТекстЗапроса+
"//{{ЗАПРОС(Сформировать)
|Сотрудник = ЖурналРасчетов.Зарплата.Объект;
|ФизЛицо = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент;
|Должность = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Должность;
|Подразделение = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Подразделение;
|Оклад = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Оклад;
|Расчет = ЖурналРасчетов.Зарплата.ВидРасч;
|Результат = ЖурналРасчетов.Зарплата.Результат;
|ДатаНачала = ЖурналРасчетов.Зарплата.ДатаНачала;
|ДниВЖурнале = ЖурналРасчетов.Зарплата.Дни;
|ЧасыВЖурнале = ЖурналРасчетов.Зарплата.Часы;
|ТекущаяЗапись = ЖурналРасчетов.Зарплата.ТекущаяЗапись;
|Функция Дни = Сумма(ДниВЖурнале) когда ((Расчет.ВходитВГруппу(ОсновныеНачисления)=1) и
(ФизЛицо = Сотрудник));
|Группировка ФизЛицо без групп;
|Условие((Результат<>0)или((ДниВЖурнале<>0)и(Расчет.ВходитВГруппу(ОсновныеНачисления)=1)));
|"
;
////////////
выдает ошибку
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{1С:Предприятие: Функция Дни = Сумма(ДниВЖурнале) когда ((Расчет.ВходитВГруппу(ОсновныеНачисления <>> =1) и (ФизЛицо = Сотрудник));
Запрос[13] : Ошибка в выражении 'ОсновныеНачисления'
"
//////////////
ОсновныеНачисления=База.EvalExpr("ГруппаРасчетов.ОсновныеНачисления");
Запрос = База.CreateObject("Запрос");
ТекстЗапроса = "Период с "+"'"+ НачалоПериода+ "'" + " по "+ "'" + КонецПериода + "'"+";";
ТекстЗапроса = ТекстЗапроса+
"//{{ЗАПРОС(Сформировать)
|Сотрудник = ЖурналРасчетов.Зарплата.Объект;
|ФизЛицо = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент;
|Должность = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Должность;
|Подразделение = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Подразделение;
|Оклад = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент.Оклад;
|Расчет = ЖурналРасчетов.Зарплата.ВидРасч;
|Результат = ЖурналРасчетов.Зарплата.Результат;
|ДатаНачала = ЖурналРасчетов.Зарплата.ДатаНачала;
|ДниВЖурнале = ЖурналРасчетов.Зарплата.Дни;
|ЧасыВЖурнале = ЖурналРасчетов.Зарплата.Часы;
|ТекущаяЗапись = ЖурналРасчетов.Зарплата.ТекущаяЗапись;
|Функция Дни = Сумма(ДниВЖурнале) когда ((Расчет.ВходитВГруппу(ОсновныеНачисления)=1) и
(ФизЛицо = Сотрудник));
|Группировка ФизЛицо без групп;
|Условие((Результат<>0)или((ДниВЖурнале<>0)и(Расчет.ВходитВГруппу(ОсновныеНачисления)=1)));
|"
;
////////////
выдает ошибку
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{1С:Предприятие: Функция Дни = Сумма(ДниВЖурнале) когда ((Расчет.ВходитВГруппу(ОсновныеНачисления <>> =1) и (ФизЛицо = Сотрудник));
Запрос[13] : Ошибка в выражении 'ОсновныеНачисления'
"
Читают тему
(гостей: 1)