Добрый день!
Кто-то сталкивался с инкрементальной загрузкой SAP BSEG?
Проблема в том, что таблица не хранит время записей, по которым можно загрузить нужные данные. Приходится делать внутренний подзапрос по SAP с подключением к таблице BKPF (где есть даты), что указан в справки сенса.
Экспериментальным путем было выявлено, что если позиций при обновлении около 300 т., то загрузка проходит, если больше то идет ошибка "QVX_UNEXPECTED_END_OF_DATA: TIMEOUT_READ_MEMORY:". Но в моем случае может легко оказаться, что в течении одного дня будет больше позиций и соответственно нельзя ограничить срок загрузки данных, т.к. там дискретность 1 сутки, времени у дат нет.
Set vNameTable = BSEG;
Set vFieldNames='BELNR
,BUKRS
,BUZEI
,EBELN
,EBELP
,GJAHR
,ZUONR';
$(vNameTable):
SQL SUBSELECT
$(vFieldNames)
From $(vNameTable)
Where BELNR BUKRS GJAHR in (Select BELNR BUKRS GJAHR From BKPF Where
CPUDT GE '$(LASTDATECPUDT)' or AEDAT GE '$(lastDateAEDAT)');
Привет,
нет, к сожалению, до SAP пока еще не добрался.
Если не использовать подзапросы через ODBC - результат тот же?
Я все больше склоняюсь к тому, чтобы ODBC использовать только как "транспортное средство", без каких-либо вычислительных нагрузок. Если необходимо сделать подработку данных, то делать это - или только средствами SQL, или только QLik.
А ODBC пусть тянет или результат или сырые данные для обработки в QLIK, по ситуации уже ясно будет.
Поразбирался. Оказалось, если грузить отдельно по дням и переменные '$(LASTDATECPUDT)' и '$(lastDateAEDAT)' принимать одним числом, то удается стабильно грузить.