Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Не работает функция InStr / 3 сообщений из 3, страница 1 из 1
23.01.2019, 17:56
    #39763770
ferzmikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает функция InStr
Здравствуйте!

Нужно выгрузить те элементы атрибута, которые содержат "Иванов".
Так не выгружает
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT
{} ON 0,
FILTER(
	[Торговые точки].[Клиент].[Клиент],//.Members,
	INSTR(
		[Торговые точки].[Клиент].CurrrentMember.Name,
		'Иванов'				
		)>0
) ON 1
FROM
	PROFIT

И так не выгружает
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT
{} ON 0,
FILTER(
	[Торговые точки].[Клиент].[Клиент].Members,
	INSTR(
		[Торговые точки].[Клиент].CurrrentMember.Properties('Nаme'),
		'Иванов'
		)>0
) ON 1
FROM
	PROFIT

И тут также не выгружает
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
WITH
SET [Сет] AS
FILTER(
	[Торговые точки].[Клиент].[Клиент].Members AS C,
	VBA!InStr(
		1,
		C.CurrrentMember.Name,
		'Иванов'
	)>0
)
SELECT
	{}
ON 0,
	[Сет]
ON 1
FROM
	PROFIT

То есть по всем трем вариантам возвращает ноль строк.

Поисковый элемент в атрибуте присутствует.

Почему так? Как правильно написать? Может у функции InStr есть условия? Или это зависит от того, как в самом кубе прописано?
...
Рейтинг: 0 / 0
23.01.2019, 22:50
    #39763853
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает функция InStr
ferzmikk,

1) применить фильтр в экселе
2) запустить профайлер и глянуть запрос (или через vba)
...
Рейтинг: 0 / 0
24.01.2019, 08:01
    #39763931
ferzmikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает функция InStr
Критикferzmikk,

1) применить фильтр в экселеЕсли из excel запустить такой запрос
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT
{[Measures].[Отгрузки шт]} ON 0,
[Торговые точки].[Клиент].[Клиент]
ON 1
FROM
	PROFIT
WHERE
	[Время].[Месяц].&[2018-12-01T00:00:00]

и потом делать excel-ую фильтрацию, то находит нужного клиента.

А если запустить такой запрос
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SELECT
{[Measures].[Отгрузки шт]} ON 0,
FILTER(
	[Торговые точки].[Клиент].[Клиент],
	INSTR(
		[Торговые точки].[Клиент].CurrrentMember.Name,
		'Иванов'				
		)>0
) ON 1
FROM
	PROFIT
WHERE
	[Время].[Месяц].&[2018-12-01T00:00:00]

то выдает сообщение При синтаксическом анализе строки [Торговые точки].[Клиент].[CurrentMember] в кубе не был найден объект уровня "CurrentMember".
2) запустить профайлер и глянуть запрос (или через vba)В VBA ThisWorkbook.Sheets(1).ListObjects(1).QueryTable.CommandText запрос такой же.
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Не работает функция InStr / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]