И самописная конфа, в которой удаленно подключаемся к базе и тот же самый запрос выдает ошибку: Meta name parser error: это метаимя разрешить невозможно "$РегистрОстаткиОбороты.ОстаткиТоваров", а если из запроса
|FROM
| $РегистрОстаткиОбороты.ОстаткиТоваров(:НачДата, :КонДата~, Документ, Движения, , Фирма = :Фирма AND Склад = :Склад AND Товар = :Расшифровка, Товар, ОстатокТовара) AS РегистрОстаткиТоваров
убрать Документ и соответственно закомментировать все к документу относящееся, то начинает работать.
ЧЯДНТ?
НачалоПериода - тип: значение. Строка, представляющая период или момент времени во внутреннем формате 1С. По умолчанию начало ведения учета.
КонецПериода - тип: значение. Строка, представляющая период или момент времени во внутреннем формате 1С. Если передан период времени (дата, позиция документа), он в расчет не включается. Для того чтобы он включался в расчет нужно воспользоваться модификатором, или предварительно сформировать момент времени (См. СформироватьПозициюДокумента()). По умолчанию точка актуальности.
Периодичность - тип: конструкция типа ключевое слово. Указывается дополнительный разворот итогов по периодичности. Задается один из следующих вариантов:
Период | Period - только за период (не разворачивать);
Документ | Document - разворачивать по документу;
День | Day - разворачивать по дням;
Неделя | Week - разворачивать по неделям;
Декада | TenDays - разворачивать по декадам;
Месяц | Month - разворачивать по месяцам;
Квартал | Quarter - разворачивать по кварталам;
Год | Year - разворачивать по годам.
По умолчанию Период.
МетодДополнения - тип: конструкция типа ключевое слово. Имеет смысл, только когда используется разворот по периодам. Задается один из следующих вариантов:
Движения (Actions) - в таблицу включаются обороты по каждому периоду движений, и текущие остатки только по тем комбинациям измерений, по которым были движения в период расчета;
ДвиженияИГраницыПериода (ActionsAndPeriodBoundaries) - в таблицу включаются обороты по каждому периоду движений и текущие остатки; также таблица дополняется записями о ненулевых остатках на начало и/или конец на границы периода расчета.
Соединение - тип: конструкция типа join. На языке SQL можно описать дополнительные соединения с таблицами, которые могут быть необходимы для формирования условий в следующем параметре. Можно оперировать полями измерений регистра, обращаясь к ним по идентификатору 1С. По умолчанию отсутствует.
Условие - тип: конструкция типа where. На языке SQL можно описать условие для ограничения выборки. Можно оперировать полями измерений регистра, обращаясь к ним по идентификатору 1С, а также полями таблиц, соединения с которыми были описаны в предыдущем параметре. По умолчанию отсутствует.
Измерение - тип: конструкция типа список идентификаторов. Указывается список измерений, по которым нужно рассчитать остатки и обороты. По умолчанию по всем.
Ресурс - тип: конструкция типа список идентификаторов. Указывается список ресурсов, которые нужно рассчитать. По умолчанию по всем.
Поля:
<ИмяИзмерения> - имена измерений указанных к расчету; тип определяется типом измерения регистра;
<ИмяРесурса>НачальныйОстаток - имена ресурсов с добавлением слова НачальныйОстаток, указанных к расчету; тип определяется типом ресурса регистра;
<ИмяРесурса>Приход - имена ресурсов с добавлением слова Приход, указанных к расчету; тип определяется типом ресурса регистра;
<ИмяРесурса>Расход - имена ресурсов с добавлением слова Расход, указанных к расчету; тип определяется типом ресурса регистра;
<ИмяРесурса>КонечныйОстаток - имена ресурсов с добавлением слова НачальныйОстаток, указанных к расчету; тип определяется типом ресурса регистра;
Период - тип datetime; дата начала периода, по которому происходит разворот оборотов; существует только в том случае, если указана периодичность День, Неделя, Декада, Месяц, Квартал, Год;
ПозицияДокумента - тип char(23); строка в формате date_time_iddoc (8+6+9); существует только в том случае, если указана периодичность Документ;
ВидДокумента - тип int; идентификатор вида документа; существует только в том случае, если указана периодичность Документ.
Описание: Используется для получения остатков и оборотов. Определена только для регистра остатков.
Показать
Так же собственно и делаю. Мб дело не в синтаксисе?
(7) succub1_5, так я и пишу не про синтаксис, а про свойство md у объекта ODBCRecordset и о том, что его нужно правильно инициализировать с помощью ПрисоединитьМД
еще нюанс: на 2003 Win работает без проблем, на XP нет, версии драйвера 2003 - SQL Server 2000.86.3959.00, XP - 2000.85 - может из-за этого?
После подмены файлов версии стали одинаковые, но всеравно не пашет.
Может проблема в идентификации имени самой таблицы. Попробуйте заменить "$РегистрОстаткиОбороты.ОстаткиТоваров" на реальное имя таблицы (которое из букв и цифр состоит) и не использовать метапарсер имен.
(12) VitusBering, по другому складу/товару вот что сформировало: #T5C8300D8D60F492193BF05350E9EF3B5
Поэоду проблема не в запросе, а в версиях винды и что там связано с версией драйвера.
иногда удобнее насоздавать view в SQL server и обращаться напрямую к ним без $,
и запросы тестировать удобней
sel ect * fr om Д_ОтгрузкаТовара Документ
left join дс_ОтгрузкаТовара ДокументСтроки on ДокументСтроки.iddoc = документ.iddoc
where ДатаДок between :НачДата and :КонДата~