Qlikview 加载具有不同标题的多个文件

Qlikview 加载具有不同标题的多个文件,qlikview,Qlikview,我已成功使用以下脚本从多个文件加载数据: SET ThousandSep=' '; SET DecimalSep=','; SET MoneyThousandSep=' '; SET MoneyDecimalSep=','; SET MoneyFormat='# ##0,00 €;-# ##0,00 €'; SET TimeFormat='hh:mm:ss'; SET DateFormat='DD/MM/YYYY'; SET TimestampFormat='DD/MM/YYYY hh:mm:s

我已成功使用以下脚本从多个文件加载数据:

SET ThousandSep=' ';
SET DecimalSep=',';
SET MoneyThousandSep=' ';
SET MoneyDecimalSep=',';
SET MoneyFormat='# ##0,00 €;-# ##0,00 €';
SET TimeFormat='hh:mm:ss';
SET DateFormat='DD/MM/YYYY';
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
SET MonthNames='janv.;févr.;mars;avr.;mai;juin;juil.;août;sept.;oct.;nov.;déc.';
SET DayNames='lun.;mar.;mer.;jeu.;ven.;sam.;dim.';

Data:
LOAD *, SubField(FileName(), '-', 1) as Regul, FileName() as fileName FROM
[P:\Some\Path\*.csv]
(txt, codepage is 1252, embedded labels, delimiter is '|', msq);
它工作得很好

现在我想加载具有不同头名称的文件,假设
filea
具有以下内容:

HeadA | HeadB | HeadD
0     | 33    | 72
文件B

HeadB | HeadC | HeadD
60    | 40    | 30
我想把它解释为:

Headers: HeadA | HeadB | HeadC | HeadD
FileA:   0     | 33    | null  | 72
FileB:   null  | 60    | 40    | 30

有没有办法做到这一点(当前的脚本挂起12小时,只有60ko的数据…)?还是必须手动合并标题?

连接加载…函数将执行您想要的操作

诀窍是先用一个不打算使用的列创建一个伪表(这样它在任何可能使用的列中都有null),然后让*.xls部分运行。如果额外的行困扰您,您可以在完成后再次运行该表,并应用
where isnull(NotTheHeader)
子句

 Data:
 load 1 as NotTheHeader AutoGenerate(1);

 Concatenate 
 Load *, SubField(FileName(), '-', 1) as Regul, FileName() as fileName from
 [P:\Some\Path\*.csv]
 (txt, codepage is 1252, embedded labels, delimiter is '|', msq);