QlikView中文教程v8_part2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
QlikView T utorial V8
创建文件
CREATING A DOCUMENT
第十一课将数据加载进QlikView
LESSON 11 LOADING DATA INTO QLIKVIEW
QlikView通过来自于一个或若干个数据源的重组数据来创建文件的.例如,来自于一个关系数据库或是包含数据表的文本文件.这个是通过书写和执行一个脚本来获取到在数据库中的表和字段.脚本能
够产生导致自动地和工具包含进QlikView.注意在QlikView中没有数据库;因而它,没有可能来添加新数据到数据库中或是通过QlikView来改变数据库中的数据.
在这节课,你将创建由一个数据表组成的简单文件.
观察已定界文本文件
Looking at a delimited text file
最简单的方式将数据表存储进文本文件中.这种模式的文件,每一行表示一个记录,字段(栏位)使用符号来区分.例如,逗号(或是分号,以tab键间隔,等等).字段名在第一行存储.在例子中将使用的文件类型是csv(逗号分离值)文件,使用逗号定义每个值.你将通过观察文本编辑工具中的csv文件来开始:
1 开始自一个文本编辑工具.例如,记事本.
2 打开..\T utorial\Application\Data Sources路径下的文件Country1.csv.
文件中的国家逻辑上是一个表,在那里的每一行,或记录,代表一个国家及其属性.栏位通过逗号来分离,首行包含了栏位(字段)名.
3 关闭文本编辑工具.
逗号分隔值文件和文本文件通过其他定义符号,例如使用tab键分隔或是分号,通常也能够导入和导出自电子表格程序.例如:Excel.如果你有一个电子表格程序,当创建表格的时候它能够比文本编辑工具更易于操作.
注意,QlikView对于Excel文件(.xls)就像对待文本文件那样,意思是,你能够立即装载它们进脚本而不通过其他格式保存它们.
装载文本文件
Loading the text file
当装载文件进QlikView时,首先要做的事就是创建一个空白的文件.
1 启动QlikView.
2 在文件菜单或是工具栏上选择New.
3 保存QlikView文件进..\Tutorial\Application文件夹.名称就像MyApplication.qvw.
接下来要做的就是创建一个用于指定加载文件的脚本:
4 在文件菜单或是工具栏上选择Edit Script.
打开Edit Script对话框.在对话框中脚本将被创建.每行开始时的SET表明在脚本编辑框右上部分中已经准备好的脚本.左侧Statements下的每个声明通过设置框来表明右侧的每一行SET脚本.在对
话框的底部你将找到一行包含了能产生脚本的功能.
5 选择Data From Files下的T able Files...按钮.打开本地文件对话框,浏览你希望载入的文件.确保文件类型:All T able Files(所有表格文件).
6 找到文件Country1.csv(之前你使用文本编辑工具打开过),选取它然后点击Open.现在T able Files Wizard已经将文件打开,它将文件内容解释出来并帮助你的脚本通过正确的方式来载入数据. T able Files Wizard将文件解释为使用逗号分隔(划分),ANSI字符设置的文件.这是比较合适的解释.除此之外,文件是能够嵌入标记的,意思是首行包含字段名,当在文本框中,你发现这同样是正确
的:Country,Capital等等,都是真实的字段名.最后,缺少头部字段信息的文件其头部字段信息将使用处在第一行的字段内容来代替.
7 到目前为止,程序已经完成了文件正确的解释,你可以点击Finish.
8 在Edit Script对话框中产生类似脚本:
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country1.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
研究脚本.注意它的语法,LOAD和FROM均被高亮显示.说明它们是关键字,在QlikView脚本中有特殊的含义.你可以通过Settings菜单下的Configure...(Edit Script对话框下)来改变颜色.获取更详尽的帮助请参见Reference Manual.
装载后,选取文件的这些字段会被列表化.其中一些字段名使用方括号;当一个字段名包含空格时这是必要的措施.关键字FROM后跟随了文件的路径.在教程中我们使用相对路径,意思是将显示位置(文件夹)和文件名Country1.csv.
最后括号包含了文件的附加信息,具体说明使用ANSI字符设置(Windows文件标准),那个文件是文本文件,使用逗号来分离字符,首行包含字段名.你能从文件中认出它们.
9 为了一直保存你脚本的改变(仍旧在Edit Script对话框中),在你试图重载它之前,它是很好的习惯.如果重载不能成功,那个方法使你很容易地退回和做一些改变.
10 点击Reload按钮.
11 现在数据已经装载进QlikView,出现了一个包含可能被选取用来显示字段的对话框.
12 选取Available Fields下的字段Area (km.sq.),Capital,Currency和Population(mio)到Fields Displayed in Listboxes下.以'$'开头的字段名是系统字段(只有选中Show System Fields 它们才会出现)
13 点击OK,关闭对话框.所有被选取的字段在QlikView面板中以列表的形式展现.
如果你想添加或删除字段,你可以在任何时候打开面板的Properties对话框进行操作.
14 点击列表Capital下的一个首都,你将发现在其他列表中关联显示的信息,举个例子国家使用的货币(Currency).注意所有的涉及到国家的信息,到目前为止表中的每一个被装载的记录代表了一个国家.因此在巴黎(Paris)上点击并不表明你将得到巴黎的人口数量.它仍是作为法国的人口数来显示.
15 清除你之前的选取操作.
相对路径和绝对路径
Relative paths and absolute paths
在教程中我们使用相对路径,意思是QlikView将通过文件相对与当前QlikView文件存储的位置. 为了使用相对路径,需要选中Edit Script对话框中的Data From Files下的Relative Paths.也可以直接在脚本中改变路径.
一个相对路径的例子:
..\Application\Data Sources
在QlikView脚本中目录声明之前,声明使用相对路径.学习更多有关目录声明的内容,请参见Reference Manual.
绝对路径,是另一种写法,给出了正确详细的文件位置.如果你将文件移动到另一个位置(例如,移到用户目录或是其他的硬碟上),程序将不能找到相关的文件并执行脚本.
一个绝对路径的例子:
C:\Documents and Settings\Desktop\Application\Data Sources
保存,关闭和退出
Saving, closing and exiting
第十二课主题
LESSON 12 THEMES
主题是很有用的,因为你只需要创建一次布局,然后将它拷贝到任意一个文件中.基本的思想就是从一个已存在的QlikView文件及其面板对象'提取出'布局设置到主题文件,然后将相同的设置赋予新的文件,使用Theme Maker Wizard.
创建主题
Creating a theme
现在你将创建一个非常基础的布局主题,包含面板背景和列表的布局设置.
1 打开文件T utorial.qvw,你已经在教程的第一部分使用过它.这个文件包含了所有你的新文件需要的布局设置. 首先你希望在每个面板的首部显示商标,并且你希望标签是绿色的.
2 选取文件菜单Layout - Theme Maker Wizard.
3 点击Next >到达Step 1 - Select theme file.
4 确定选中New Theme,然后点击Next >.打开另存为对话框.
5 文件名填入MyTheme.qvt然后将它保存在..\Tutorial\Application文件夹下.
6 在Step 2下Source处下拉选取Document.Property Groups下Object Type Specific是默认选取的.点击Next >.
7 选中Document Background和Sheet Object Styles,取消其他的选取.点击Next >.
8 在最后一个页面,选中Set as default theme for this document.点击Finish来保存主题,关闭对话框.
现在你将已经创建了一个非常基础的布局主题,包含面板背景和列表的布局设置.现在你希望添加面
板标签为绿色.
9 再次打开Theme Maker Wizard.在Step 1 - Select theme file下选中Modify Existing Theme.在下拉列表中你最新创建的主题是被建议选取的.选取它.点击Next >.
10 在Step 2 - Source Selection下Source处下拉选取Sheet Document\SH01 - Geography.Property Groups下Object Type Specific是默认选取的.点击Next >.选中Sheet Background和Sheet tab.点击Next >.
11 在Step 3a - Object type specific properties,点击Next >,点击Finish.
从面板已经选取的布局设置现在已经添加进主题了.现在你希望为主题带有添加绿色标题的列表.
12 再次打开Theme Maker Wizard.打开你的主题,然后到Step 2 - Source Selection.
13 在Source下,选取一个列表作为当前标题颜色的参照.在本案中你选取List Box Document\LB01 - Country.选中Property Groups下Object Type Specific,Caption和Border.点击Next >.来自列表的布局设置现在已经添加进主题中.
14 点击Next >直到到达Step 4 - Insertion of properties in theme.这里你可以选取希望赋予相同标题和边框设置的对象.在主题中不包含按钮,文本对象和线条/箭头对象,这是个好主意- 你也许希望为它们使用不同的布局.
15 点击Next >达到对后一页.不做任何改变.点击Finish.
16 现在你已经完成创建主题的任务.关闭文件T utorial.qvw.
为文件应用主题
Applying a theme to a document
1 打开文件MyApplication.qvw.你在之前的教程中已经创建了.
2 选取文件菜单Settings - Document Properties,切换到Layout页.
3 点击Apply Theme...按钮,然后浏览你的主题,召唤MyTheme.qvt.点击Open.主题现在被应用到你的文件:面板标签为绿色,出现了QlikView的商标,所有列表的标题转变成绿色.
在任何时候你可以撤销和修改你的主题.你也许希望为其他的面板对象添加布局属性,例如,图表或是按钮.你能够经常地如你所想的在自己的文件上应用主题.为了解更多有关主题的信息,请参见Reference Manual.
保存,关闭和退出
Saving, closing and exiting
第十三课联合多个表的数据
LESSON 13 ASSOCIATING DATA FROM MANY TABLES
在前面的课程中,你通过装载一个表到QlikView中创建了一个基本文件.然而,你通常希望从较大数量的表中装载和关联数据.在这次课你将熟悉使用QlikView的方法自动地将有关联的表联合起来.你也能够学到如何重命名字段来保证或是阻止自动联合的发生.
联合
Associations
如果你有两个表它们分别列出不同的东西.例如,如果一个列出所有顾客另一个列出所有发票,这两个表有一个公共的字段(栏位).例如,顾客号码.这通常表明那两个表存在一个关联.
如果存在这样一个关联,在表与表间的公共字段能够联合这些表:QlikView假定那两个字段代表相同的事物,同时这两个字段被视为一个.这样一个被称作关键匙的字段连接了两个或是更多的表.
这有两个联合的基本规则:
1 为了联合两个字段,它们需要有完全相同的名称(区分大小写).因此Name和name不同,不能联合.
2 如果确定在多个不同的已装载表的字段中有完全相同的值,QlikView将它视为一个值,同时也假定将要联合那些记录(行)包含的值.为了联合两个字段的值,它们其中任意一个需要-有完全相同的拼写(区分大小写),或者
-有正好相同的数字值
因此:Name和name不同,不能联合.数字123和00123相同,可以联合.
为更好地证明基本规则,学习下面的例子:
For a further illustration of the basic rules, study the following example:
T able 1: T able 2: T able 3:
Name Number Number Age Name ID
John 1 3 28 Phil ab
Phil 2 4 35 john xy
Betty 5 2 42
字段名Number参照第一个规则被假定是一个相同的名称.T able 1和T able 2通过这个字段来联合.T able 1和T able 3也通过字段名称来联合.
在T able 1和T able 2字段Number中都有值2,说明Phil被假定与Age 42联合.
T able 1中字段Number的值2和T able 3中字段ID的值ab,是通过字段Name的值Phil来联合的.T able 1中字段Name的值John,因为T able 3中相应字段没有相同的值,所以那里不会联合.
称为联合,意思是在不同表中的字段间建立连接,所以逻辑上的连接是有意义的.这个方法将若干个来自一个或多个数据库中的表,逻辑上同时包含进QlikView中.
打开文档
Opening the document
1 启动QlikView.
2 打开MyApplication.qvw.
装载和联合第二个表
Loading and associating a second table
你的文件包含一个表用以显示国家-详情的资料.在这次课,你将装载一个附加表展现一个顾客列表.国家表和顾客表将通过公共字段Country来联合.顾客开始注册进不同的国家,国家属性和顾客键的关系是有意义的,就像联合结果表现的那样.
新表来自一个Excel文件,但是你不能使用和文本文件相同的方式来装载它.
1 在文件菜单或是工具栏上选择Edit Script.
2 将光标放到脚本编辑框Main的尾部.
3 选择Data From Files下的T able Files...按钮.
4 选取..Tutorial\Application\Data Sources文件夹下的Customer.xls,然后点击打开.
5 注意此时Type下已默认选中了Excel Files (BIFF),T able下包含了工作表的名称.这个Excel 文件只包含一个工作表;如果包含多个工作表或是已命名的表格,T able的下拉列表会给出相应的名称以供选取.点击Finish.在Edit Script对话框中产生类似脚本:
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country1.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD [Customer ID],
Customer,
Address,
City,
Zip,
Country
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\CUSTOMER.xls] (biff, embedded labels, table is [CUSTOMER$]);
研究脚本.你发现Country1.csv和Customer.xls都包含Country这个字段.符合上文中联合规则的描述,QlikView将会通过这个字段来联合这两个表.
6 点击Reload按钮.
7 现在出现了一个包含可能被选取用来显示字段的对话框.除了Country,所有来自文件Customer.xls的字段已经被添加到Available Fields下.字段Country将通过相同的字段名来联合预先装载的字段.
8 选取Available Fields下的字段Customer和Country到Fields Displayed in Listboxes 下.
9 点击OK.
10 保存你的文件.
现在点击列表Capital中的一个首都,查找居住在这个国家首度的顾客;同时在顾客注册表里查找.这是有可能的,尽管Customer和Capital在不同的表中.只有具备先决条件的字段,Country,在两个表之间通用.
11 点击列表Capital中的Alma-Ata,哈萨克斯坦的首都,注意虚构的公司在哈萨克斯坦拥有两个顾客.
12 清除你之前的选取操作.
现在你建立了一个简单的QlikView文件包含来自两个表的数据.多个表能够通过这种方式被连接(联合),在多个表的数据中学习产生复杂的关系.
重命名字段
Renaming fields
在前面的部分,你学习了通过制造被称为关键匙的公共字段来联合表.就像我们看到的,两个字段联合的标准(被视为一个相同的字段)是它们拥有相同的名称.
因此就变成清除字段名显得十分重要,并且当建立QlikView数据结构时重命名字段是通用的过程:在现实生活中,字段应该被联合而不需要在不同的表中一直有完全相同的名称.除此之外,你不希望联合可能名称相同的字段.在创建QlikView文件时重命名字段能够阻止或是创造联合,这是非常重要的部分.
目录包含附加的字段(表),那是与你的文件相关的.你希望联合文件Transact.csv,一个文件包含关于交易的信息,销售,等等.在文件中关于顾客:
1 在文件菜单或是工具栏上选择Edit Script.
2 将光标放到脚本编辑框Main的尾部.
3 选择Data From Files下的T able Files...按钮.
4 选取..Tutorial\Application\Data Sources文件夹下的Transact.csv,然后点击打开.
5 确保选中Type下的Delimited,T able下包含了工作表的名称.Options下,Labels处下拉选取Embedded Labels;Delimiter处下拉选取Comma.
直到现在,你只有认可T able File Wizard对话框给你的设置建议.现在我们将使用一些可能的操作来改变QlikView读取数据文件的方式.
在前面我们装载的文件Customer.xls中,那有一个字段名叫Customer ID.注意新文件包含一个字段名叫ID Customer.这两个字段应该能够被联合.例如,将他们视为一个.为了达到这个目的,你需要将其中一个字段重命名.
6 T able File Wizard对话框对重命名字段提供极好的支持.简单的点击进ID Customer的表头,然后输入新的名称Customer ID.确保两个词之间的空格没有被遗漏:任何拼写错误将阻止QlikView 解释它们成为一个字段.
7 敲击Enter.字段名称被改变.
8 点击Finish.
在Edit Script对话框中产生类似脚本:
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country1.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD [Customer ID],
Customer,
Address,
City,
Zip,
Country
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\CUSTOMER.xls] (biff, embedded labels, table is [CUSTOMER$]);
LOAD [Transaction ID],
Year,
Month,
Day,
[Salesman ID],
[Product ID],
[Serial No],
[ID Customer] as [Customer ID],
[List Price],
Sales,
[Gross Margin]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\TRANSACT.CSV] (ansi, txt, delimiter is ',', embedded labels, msq);
注意行[ID Customer] as [Customer ID]:这是刚才设置的结果,说明字段ID Customer使用名称Customer ID装载进QlikView(如此可以保证必要的联合).
9 点击Reload按钮.
10 出现了Sheet Properties对话框.选取Available Fields下来自于文件Transact.csv的字段到Fields Displayed in Listboxes下.例如,Sales.
11 点击OK.
12 保存你的文件.
已经装载了三个不同的表,分别包含关于国家,顾客和交易.通过使用已描述的方式来联合
表,QlikView允许你在同一时刻查询所有表中相关联的信息- 意思是单一的点击.
13 在列表Country冲选取Finland.程序立即提供存储在国家表中的地理数据- 不但显示出居住在芬兰的顾客名称,而且有它们相关的销售数据.
14 清除你之前的选取操作.
注意在QlikView中能容易地联合表,并且可能连接字段和表.如果联合被完成,QlikView将不能给你有关的答案.仔细思考之前使用字段名称来联合不同表的字段,由此定义的联合.
现在你应该获得一些关于装载和联合表的基础知识.
保存,关闭和退出
Saving, closing and exiting
第十四课连接表
LESSON 14 CONCATENATING TABLES
在前面的课程,你学习了装载数据进QlikView,并且联合含有公共字段的不同的表.然而,开始作为替代联合,表也能够被合并.如果装载了两张内容相同的表,但包含不同的值.例如,如果一个列出欧洲的国家,另一个列出北美和南美的国家,第二张表可以看做是第一张表的延续.表在那时应该被合并.
打开文档
Opening the document
1 启动QlikView.
2 打开MyApplication.qvw.
自动连接
Automatic concatenation
如果两张表设置输入的字段完全相同,QlikView自动地将第二张表视为第一张连续的部分.这被称作连接表.
任何数量的表均能够被连接进一张表.
你的QlikView文件回收来自一个被限制数量的国家字段的数据.在..T utorial\Application\Data Sources目录下包含两个列出国家的文件,它们的字段名称完全一致并准备好装载进Country1.csv.当你装载第二个文件,它将会被自动地被连接.
1 在文件菜单或是工具栏上选择Edit Script.
2 将光标放在装载文件Country1.csv的声明之后(所有声明均以分号结尾)并且敲击Enter来得到一个空行.装载声明在列表中是随意摆放的,但通过保持国家字段在一起能够获得良好的脚本视图. 3选择Data From Files下的T able Files...按钮.
4 选取..Tutorial\Application\Data Sources文件夹下的Country2.csv,然后点击打开.
5 确保选中Type下的Delimited,T able下包含了工作表的名称.Options下,Labels处下拉选取Embedded Labels;Delimiter处下拉选取Comma.
6 此时你不需要对字段重命名,所以点击Finish.现在Edit Script对话框中产生类似脚本: LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country1.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country2.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD [Customer ID],
Customer,
Address,
City,
Zip,
Country
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\CUSTOMER.xls] (biff, embedded labels, table is [CUSTOMER$]);
LOAD [Transaction ID],
Year,
Month,
Day,
[Salesman ID],
[Product ID],
[Serial No],
[ID Customer] as [Customer ID],
[List Price],
Sales,
[Gross Margin]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\TRANSACT.CSV] (ansi, txt, delimiter is ',', embedded labels, msq);
注意在Country1.csv和Country2.csv中的字段完全相同.
7 点击Reload按钮.打开Sheet Properties对话框.这里显示出你最后一次选取的用于显示的字段.没有新的字段需要添加,至此Country2.csv中的字段的值已经被添加进Country1.csv相应的字段中.
8 点击OK.关闭对话框.
初看一眼,你的文件看起来像之前那个样子;但是那里有很多内容被登入到列表中.有些列表可能会变宽或是得到滑动条来显示长字段国家.
9 保存你的文件.
强制连接
Forced concatenation
有时候你希望连接表并且它们拥有不同的字段.QlikView将p还有第三个文件Country3.csv,仅仅包含一个字段子集.所有三个字段均列出国家.而且它们包含不同的国家,所有它必定与连接这三个文件到一个逻辑表有关.
在连接表时将字段遗失的值至为NULL.即QlikView将这三个字段视作不含值.
操作如下:
1 在文件菜单或是工具栏上选择Edit Script.
2 将光标放在装载文件Country2.csv的声明之后,此时装载声明在列表中不是随意摆放的.至此在脚本中连接声明强迫连接最后一个以创建的逻辑表.
3 选择Data From Files下的T able Files...按钮.
4 选取..Tutorial\Application\Data Sources文件夹下的Country3.csv,然后点击打开.
5 点击Finish.在Edit Script对话框中产生类似脚本:
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country1.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD Country,
Capital,
[Area(km.sq)],
[Population(mio)],
[Pop. Growth],
Currency,
Inflation,
[Official name of Country]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country2.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD Country,
[Official name of Country],
[Area(km.sq)]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country3.csv] (ansi, txt, delimiter is ',', embedded labels, msq);
LOAD [Customer ID],
Customer,
Address,
City,
Zip,
Country
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\CUSTOMER.xls] (biff, embedded labels, table is [CUSTOMER$]);
LOAD [Transaction ID],
Year,
Month,
Day,
[Salesman ID],
[Product ID],
[Serial No],
[ID Customer] as [Customer ID],
[List Price],
Sales,
[Gross Margin]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\TRANSACT.CSV] (ansi, txt, delimiter is ',', embedded labels, msq);
研究脚本.在文件Country3.csv中有三个字段同样出现在Country1.csv中,这三个字段将组成最后的以创建的逻辑表.然而,到目前为止设置的字段不完全相同,你需要添加单词来连接合并这些表:
6 将光标放在装载文件Country3.csv的声明之后,并且输入CONCATENATE.如果拼写正确,单词CONCATENATE会像LOAD和FORM那样变成蓝色.它也是一个关键字.确保在两个单词间有一个空格:
...
CONCATENATE LOAD Country,
[Official name of Country],
[Area(km.sq)]
FROM [C:\Program Files\QlikView\T utorial\Application\Data Sources\Country3.csv] (ansi, txt, delimiter is ',', embedded labels);
...
7 点击Reload按钮.
你的应用将不会有过多的改变.只是在那里多出了一些国家.
8 点击OK.
9 在Country选取Seychelles.
Seychelles是存在于第三个文件中的国家,同时你现在只能看到列表Area (km.sq)中包含了可选的数据.
10 清除你之前的选取操作.
11 为了得到一个清晰的连接表中关于国家信息的图像,可以创建一个包含国家相关字段的普通表.例如,Country,Capital,Area (km.sq),Population(mio),
Pop.Growth,Currency,Inflation,Official name of Country.
12 拖动滑动条浏览普通表中的数据.你将注意到有些行是不完整的,但使用'-'来进行填补缺失的值.这些都是来自第三个国家文件中的所有国家,只包含一个字段子集:遗失字段的值将被视为NULL.
到目前为止三个逻辑表被装载:
Country1(它连接了Country1,Country2和Country3)是一张列出所有国家的表.每一行包含特定国家的信息.
Customer是一张列出所有顾客的表.每一行包含特定顾客的信息.这张表通过字段Country而被联合,因为字段Country存在于在两个表中.
Transact是一张列出所有交易的表.每一行包含特定销售单位的信息.这张表通过字段Customer ID 而被联合,因为字段Customer ID存在于在两个表中.
当一个选取发生在一个表中时,QlikView分析选取的结果将如何影响下一张逻辑表.当这个表被分析完毕,QlikView将继续分析下一张逻辑表,等等.选取的结果通过这些表所包含的链来传播.
注意结构和圆形的参照.例如,通常情况下应该避免,链变成环形.有时候这些是属于不正确的数据模型符号.两个类似字段的将被视为一个相同的字段.如果QlikView在脚本执行期间发现了圆形的参照,这些表将被松散地结合起来.获取更详尽的帮助请参见Reference Manual.
使用表格查看器
Using the T able Viewer
这些表和它们的联合能够用嵌入表格查看器的图表来显示.
1 在文件菜单上选择T able Viewer...
到目前为止显示了三个被装载的表.每个联合的显示用一条线连接各自的表中的联合字段.
2 点击表Country1的首部.所有的表(实际上只有一个)直接地和这个被高亮显示的表联合.
2 Click on the header of the table Country1. All tables directly associated with this table (only one actually) will be highlighted.
3 有两个表格中出现了字段Customer ID点击其中一个.注意在不同表中的相同字段名Customer ID将被高亮显示.
这些表能够使用鼠标随意的在背景上拖拽,当你得到更多复杂的表结构时这将会是有用的.
通过工具栏上的可用按钮视图能够被复制到剪贴板便于将其包含进文件或是被打印.
4 点击OK.关闭表格查看器.
改良布局
Improving the layout
这个教程部分专注于创造脚本,到目前为止我们忽视了布局.然而,创建一个布局是很简单的工作,它使得QlikView能够最大限度的提供良好的信息展示,一个良好的布局是极其重要的.
你有三个不同的处理范围,你能够创建一个拥有三个不同面板的布局,叫做Geography,Customer和Sales或是类似的名称.添加列表和其他面板对象,移动它们,并调整它们的大小直到你有一个容易工作的应用.如果你忘记了操作的步骤,回到教程的第一部分Working with QlikView来寻求帮助.
保存,关闭和退出
Saving, closing and exiting
第十五课连接外部信息到文件
LESSON 15 LINKING EXTERNAL INFORMATION TO A DOCUMENT
除此之外使这些包含数据的表联合和连接,它也有可能为数据中的字段值来连接信息.这些在信息表中被定义的连接必须使用特殊的方式装载.在这次课你将为在列表Country中特殊的值连接旗帜.
打开文档
Opening the document
1 启动QlikView.
2 打开MyApplication.qvw.
观察一个信息文件
Looking at an info file
让我们通过观察一个包含信息的文件来开始连接.
1 打开文本编辑器.例如,记事本.
2 打开目录..\T utorial\Application\Data Sources下的文件FLGSOECD.CSV.
它是一个有两个字段的表,字段Country中不同的值与不同的文件已经联合.每个值都必须放在单独的行上.文件同一个字段的值联合将会被显示,播放,执行,等等.依靠文件类型.有些文件类型.例
如,bmp或wav类型是在QlikView的内部处理.其他的文件类型,使用在打开文件时联合程序.
3 关闭编辑器.
装载信息文件
Loading the info file
下一步是装载信息文件到QlikView中.
1 在文件菜单或是工具栏上选择Edit Script.
2 将光标放在脚本的底部,选择Data From Files下的T able Files...按钮.
3 选取..Tutorial\Application\Data Sources文件夹下的FLGSOECD.CSV ,然后点击打开.
4 连接文件装载就绪.选中Type下的Delimited.Options下,Labels处下拉选取Embedded。