Datawindow sharedata для нескольких окон данных

Можно ли разделить данные 2 окон данных в 1 окно данных? Как? А если нет, есть ли другой способ передать данные 2 окон данных в 1 окно данных?


person m-a    schedule 15.08.2017    source источник
comment
что ты пробовал? Всегда публикуйте пример кода и то, как он терпит неудачу. См. stackoverflow.com/help/how-to-ask.   -  person Davide Alberani    schedule 15.08.2017
comment
Нет, вы не можете разделить два окна данных (источника) в одно. Передача данных между окнами данных может выполняться многими способами, используя функции GetItemXXX и SetItem, запись через точку, данные. Пример того, чем вы хотите поделиться, может помочь, но люди не захотят помочь, если вы попросите их выполнить вашу работу.   -  person Rich Bianco    schedule 16.08.2017
comment
Я не прошу делать мою работу. То, что я прошу, это просто объяснение, вот почему я не разместил код, потому что мне нужно объяснение, сэр Рич Бьянко. В любом случае, спасибо за ответ.   -  person m-a    schedule 16.08.2017
comment
Давиде Альберани — один из тех троллей stackoverflow, которые понятия не имеют, каков ответ, но чувствуют себя обязанными указать на проблемы в том, как вы сформулировали вопрос. Вместо этого вам следует использовать форум Appeon. По крайней мере, он не сказал, что ты не в теме.   -  person Roland Smith    schedule 22.08.2017


Ответы (2)


Короче говоря, нет. Sharedata работает только из одного источника. Если несколько исходных окон данных имеют одинаковые типы столбцов, вы можете использовать метод Rowscopy и скопировать множество источников в одно целевое окно данных.

person Matt Balent    schedule 16.08.2017
comment
Спасибо за объяснение, сэр Мэтт. У меня есть вопрос при использовании rowscopy: нужно ли, чтобы длина типа данных окна данных (где вы собираетесь хранить скопированные строки) была одинаковой для всех окон данных (откуда берутся строки)? - person m-a; 17.08.2017
comment
Да, числа к числам, строки к строкам и т. д. - person Matt Balent; 17.08.2017

Альтернативный метод — вернуться к оператору SELECT и работать с SQL UNION. Например, если у вас есть следующие операторы SQL для ваших 2 dw:

SELECT a,b,c from table1
SELECT d,e,f from table2

вы можете создать новое окно данных, используя следующий SQL

SELECT a,b,c from table1
UNION 
SELECT d,e,f from table2

Конечно, различные столбцы должны быть одного типа, один за другим (a должно быть эквивалентно d, b — e,...).

В качестве альтернативы вместо создания нового dw вы можете изменить SQL из dw1, добавив (UNION) SQL из dw2 и извлекая данные.

просто дайте мне знать, если вам нужна дополнительная информация.

person Marc Vanhoomissen    schedule 16.08.2017