Четверг, 09.05.2024, 01:54
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Основной » Проблемные ситуации » Обновление грамматики запросов
Обновление грамматики запросов
DJRelaxДата: Четверг, 01.10.2015, 03:37 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 7
Репутация: 4
Статус: Оффлайн
Проблема в том что в текущей грамматике запросов 1С нет поддержки временных таблиц внешних источников данных:
ВнешнийИсточникДанных.<ИмяВнешнегоИсточникаДанных>.ВременнаяТаблица.<ИмяВременнойТаблицы>

Из-за этого не удается использовать ИРвский конструктор запросов.
Может кто нибудь исправить эту ситуацию?
Я этим еще не занимался ни разу и очень много времени займет, а знающему человеку думаю надо несколько минут.
Мне просто очень нужна эта функциональность, так как встроенный конструктор имеет ошибку и не дает работать с моим запросом, а 1С эту ошибку исправили только в версии 8.3.7, но она очень сырая и работать в ней не возможно, а запрос нужно делать и писать его ручками сложновато sad
 
tormozitДата: Четверг, 01.10.2015, 08:03 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6195
Репутация: 159
Статус: Оффлайн
Странная адресация обращения =)
Поддержка временных таблиц внешних источников данных будет добавлена в следующей версии. Будет достаточно добавить только полные имена таблиц в формате ВнешнийИсточникДанных.<ИмяВнешнегоИсточникаДанных>.ВременнаяТаблица.<ИмяВременнойТаблицы> ? Приведи пример пакетного запроса, включающего создание, выборку и уничтожение временной таблицы внешнего источника данных.
 
DJRelaxДата: Пятница, 02.10.2015, 02:08 | Сообщение # 3
Рядовой
Группа: Пользователи
Сообщений: 7
Репутация: 4
Статус: Оффлайн
Вот рабочий примерчик:
Код
ВЫБРАТЬ
    тз1С.АхИД КАК AxID,
    тз1С.МодульСФ КАК SF_Module
ПОМЕСТИТЬ ВнешнийИсточникДанных.МДАХ.ВременнаяТаблица.Datas1C
ИЗ
    &тз1С КАК тз1С
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    МДАХВременнаяТаблицаDatas1C.AxID КАК AxID,
    dbo_FACTUREJOUR_RU.FACTUREID КАК FACTUREID,
    dbo_FACTUREJOUR_RU.FACTUREDATE КАК FACTUREDATE,
    dbo_FACTUREJOUR_RU.FACTUREEXTERNALID КАК FACTUREEXTERNALID,
    dbo_FACTUREJOUR_RU.CURRENCYCODE КАК CURRENCYCODE,
    dbo_FACTUREJOUR_RU.CUSTVENDINVOICEACCOUNT КАК CUSTVENDINVOICEACCOUNT,
    dbo_FACTUREJOUR_RU.FACTUREDATE_EXTERNAL КАК FACTUREDATE_EXTERNAL,
    dbo_FACTUREJOUR_RU.MODULE КАК MODULE,
    dbo_FACTURETRANS_RU.INVOICEID КАК INVOICEID,
    dbo_FACTURETRANS_RU.INVOICEDATE КАК INVOICEDATE,
    dbo_FACTURETRANS_RU.INTERNALINVOICEID КАК INTERNALINVOICEID,
    dbo_FACTURETRANS_RU.SALESPURCHID КАК SALESPURCHID
ИЗ
    ВнешнийИсточникДанных.МДАХ.ВременнаяТаблица.Datas1C КАК МДАХВременнаяТаблицаDatas1C
       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.МДАХ.Таблица.dbo_FACTUREJOUR_RU КАК dbo_FACTUREJOUR_RU
          ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.МДАХ.Таблица.dbo_FACTURETRANS_RU КАК dbo_FACTURETRANS_RU
          ПО dbo_FACTUREJOUR_RU.DATAAREAID = dbo_FACTURETRANS_RU.DATAAREAID
             И dbo_FACTUREJOUR_RU.FACTUREID = dbo_FACTURETRANS_RU.FACTUREID
             И dbo_FACTUREJOUR_RU.MODULE = dbo_FACTURETRANS_RU.MODULE
       ПО МДАХВременнаяТаблицаDatas1C.AxID = dbo_FACTUREJOUR_RU.RECID
          И МДАХВременнаяТаблицаDatas1C.SF_Module = dbo_FACTUREJOUR_RU.MODULE
;

////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВнешнийИсточникДанных.МДАХ.ВременнаяТаблица.Datas1C

Думаю что достаточно добавить: ВнешнийИсточникДанных.<ИмяВнешнегоИсточникаДанных>.ВременнаяТаблица.<ИмяВременнойТаблицы>
 
tormozitДата: Воскресенье, 04.10.2015, 16:34 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 6195
Репутация: 159
Статус: Оффлайн
Реализовано в 3.42
 
DJRelaxДата: Понедельник, 05.10.2015, 03:53 | Сообщение # 5
Рядовой
Группа: Пользователи
Сообщений: 7
Репутация: 4
Статус: Оффлайн
Ошибка парсера ушла, открывается конструктор, но появилась новая ошибка которая проявляется при удалении нескольких временных таблиц подряд, типа:

Код
////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВнешнийИсточникДанных.МДАХ_Т.ВременнаяТаблица.Datas1C
;

//////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВнешнийИсточникДанных.МДАХ_Т.ВременнаяТаблица.втДК
;

//////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВнешнийИсточникДанных.МДАХ_Т.ВременнаяТаблица.втДП
;

//////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВнешнийИсточникДанных.МДАХ_Т.ВременнаяТаблица.втСФ


Вот описание ошибки:

Цитата
{Обработка.ирКлсПолеТекстовогоДокументаСКонтекстнойПодсказкой.Форма.КонструкторЗапроса.Форма(3089)}: Метод объекта не обнаружен (Свойство)
Если СтруктураДобавленныхТаблиц.Свойство(ЗапросПакета.ИмяВременнойТаблицы) Тогда

Так как там уже больше не структура "СтруктураДобавленныхТаблиц", а Соответствие, то код условия нужен такой:

Код
Если НЕ СтруктураДобавленныхТаблиц[ЗапросПакета.ИмяВременнойТаблицы] = Неопределено Тогда
Тогда все работает.

Спасибо огромное за добавление возможности работать с ВТ!!!!


Сообщение отредактировал DJRelax - Понедельник, 05.10.2015, 03:55
 
tormozitДата: Суббота, 16.01.2016, 13:28 | Сообщение # 6
Генералиссимус
Группа: Администраторы
Сообщений: 6195
Репутация: 159
Статус: Оффлайн
Исправлено в 3.43
 
Форум » Основной » Проблемные ситуации » Обновление грамматики запросов
  • Страница 1 из 1
  • 1
Поиск: