在 qlikview 中是否可以连接来自不同路径的多个文件。
假设,我正在加载多个带有路径的文件,并且想要连接多个文件,这些文件与第一个路径的文件具有相同的列数和名称。所以,我的问题是我该怎么做。
提前致谢。
在 qlikview 中是否可以连接来自不同路径的多个文件。
假设,我正在加载多个带有路径的文件,并且想要连接多个文件,这些文件与第一个路径的文件具有相同的列数和名称。所以,我的问题是我该怎么做。
提前致谢。
当您说“加载文件”时,我假设您的意思是将内容加载到表格中,就像您加载 QVD、XML 或 Excel 文件一样。
如果是这种情况,如果每次加载中的列都相同,如果它们按顺序加载,QlikView 将默认尝试连接它们。
否则,命名您的第一个表,例如TableName:
,然后在以下加载的其他文件前加上concatenate(TableName)
.
前任:
TableName:
LOAD Col1, Col2
from [file.qvd];
CONCATENATE(TableName)
LOAD Col1, Col2
from [file2.qvd];
注意:正如我上面提到的,由于这些是按顺序排列的并且具有相同名称的列,QlikView 将在我的示例中尝试自动连接它们,因此该CONCATENATE
行虽然仍然有效,但不是必需的。
我只想添加示例,如果在多个目录中存在动态数量的具有某个名称的文件,该怎么做:
SUB LoadFromFolder (RootDir)
TRACE Loading data ...;
TRACE Directory: $(RootDir);
TRACE ;
FOR Each FoundFile in FileList(RootDir & '\FileName.xml')
TRACE Loading data from '$(FoundFile)' ...;
Data:
LOAD Prop1,
Prop2,
Prop3
From [$(FoundFile)] (XmlSimple, Table is [XmlRoot/XmlTag]);
TRACE Loaded.;
NEXT FoundFile
FOR Each SubDirectory in DirList(RootDir & '\*' )
CALL LoadFromFolder(SubDirectory);
NEXT SubDirectory
TRACE ;
END Sub
CALL LoadFromFolder ('C:\Path\To\Dir\WithoutslashAtTheEnd');
正如 Dickie 已经说过的,每次加载到“数据:”时,它都会被添加到那里。