前言:

前面两篇都是大体介绍流程,有一些配置细节,没有细说,这里用一篇补上。

1、Excel配置项

起始行索引、列头跨行数:

对于自定义的Excel导入模板(有时候模板是由客户提供,模板的规则很乱)

比如模板里前面是一些说明,中间是列头,下面还带有数据和说明格式。

通过配置起始行索引,以及列头跨行数(0或1都代表一行),则可以解决此类问题。

条件方式:

此选项,是针对映射字段里:勾选了多个“唯一键”,的情况。

有些时候,需要满足 A and B 为组合条件:A字段+B字段 才组成唯一。

有些时候,可能需要 A or B为组合条件:A字段 或 B字段 单独都是唯一。

导入方式:

仅插入:只处理插入。

仅更新:只处理更新。

插入或更新:存在则更新、不存在则插入。

所有方式,都是:根据唯一键勾选的条件做为检测条件。

2、字段映射配置

Excel列名:

系统自动读取的Excel模板,按规则把Excel模板的列头名字读取出来。

表名+表字段名:

系统会自动读取数据库的字段描述和列表的表头配置规则,自动匹配出对应的表名+字段名。

对于系统无法自动识别或匹配错误的,则需手工调整。

对于多个表之间的关系,则手机添加补齐外键字段(外键列名可以随便取)

必填:

指定字段是否需要必填。

唯一:

做为检测插入或更新的条件。

可以勾选多个,默认是and组合,(在Excel导入配置那里,可以指定是and还是or组合)。

外键+外键对应的表名:

当涉及多个表时,总有关联字段,因此,需要添加关联字段,这里统一叫外键

添加好外键,必然需要指定该外键关联到哪个表(系统会自动识别表的主键,并进行关联)

PS:如果表之间的关联,不是通过主键关联,而是通过某个Key关联,则在格式化字段中指定的表的字段。

3、字段映射格式化:

和配置表头的配置规则一样,可以配置一些格式化(系统也会自动识别并自动读取过来)

规则一:#号配置(和导入配置规则格式化一样)

#是否

配置后,Excel数据填写的是下拉选择是与否,导入数据会格式化成1或0进数据库。

规则二:@号配置

以下几个为系统的固定替换值:

@UserID : 当前的用户ID。

@UserName :当前的用户名。

@FullName :当前的真实姓名。

其它自定义:

@XXX : 系统会自动从post过的参数里(通过Reques["xxx"])寻找同名的替换。

规则三:.号配置

可以指定取某个字段的值:配置规则为:表名.字段名(表名可以省略)

.FullName

示例:用户导入时,用户的姓名对应:FullName,但数据库还有一个字段叫RealName,即则一个值需要存两份。

则:添加一个RealName字段,并把格式化配置成 .FullName

规则四:默认值

系统固定的默认值:

now() :代表当前时间。

newid() :一个随机guid值。

其它:

9527 :写什么就值值。

总结:

配置是核心,理解了基本可以处理大部分情况,而无需写代码。

如果真的要写,请看下一篇。

ASP.NET Aries 高级开发教程:Excel导入配置之规则说明(下)的更多相关文章

  1. ASP.NET Aries 高级开发教程:Excel导入之代码编写(番外篇)

    前言: 以许框架提供的导入配置功能,已经能解决95%以上的导入情况,但有些情况总归还是得代码来解决. 本篇介绍与导入相关的代码. 1.前端追加导入时Post的参数: var grid = new AR ...

  2. ASP.NET Aries 高级开发教程:Excel导入之多表高级导入配置(中)

    前言: 在面对Excel的各种复杂导入情况中,多表导入是很常见的情景. 今天就来写一下多表导入是如何配置的. 1.自定义导入模板 怎么自定义: 其实就是自己新建一个Excel了,把列头都写好. 不过有 ...

  3. ASP.NET Aries 高级开发教程:Excel导入之单表配置(上)

    前言: 随着ASP.NET Aries的普及,刚好也有点闲空,赶紧把Excel导入功能的教程补上. Excel导入功能,分为四篇:单表配置(上).多表高级配置(中).配置规则(下).代码编写(番外篇) ...

  4. ASP.NET Aries 高级开发教程:主题样式及多语言(标签化控制)

    前言: 最新ASP.NET Aries升级到V5.2.0以上之后,之前的样式和多语言机制,有了重大的升级机制,这篇就简单介绍一下. 1.控制开关 在配置维护那里,新增了两个控制项: 2.如何添加主题 ...

  5. ASP.NET Aries 入门开发教程2:配置出一个简单的列表页面

    前言: 朋友们都期待我稳定地工作,但创业公司若要躺下,也非意念可控. 若人生注定了风雨飘摇,那就雨中前行了. 最机开始看聊新的工作机会,欢迎推荐,创业公司也可! 同时,趁着自由时间,抓紧把这系列教程给 ...

  6. ASP.NET Aries 高级开发教程:如何写WebAPI接口

    前提: 最近,有不少同学又问到,Aries里如何提供WebAPI接口? 针对这个问题,今天给顺路写个教程,其实呢,很简单的. 方式一:直接用WebService提供接口. 用这种方式,直接添加接口就可 ...

  7. ASP.NET Aries 高级开发教程:使用存储过程(番外篇)

    前言: 发现这个问题,有不少人提起过,所以就简单写成文章吧. 接下来看如何在Aries 框架中使用存储过程,整体步骤和绑定普通视图差不多. 步骤一:新建一个空视图. 可以在SqlCode管理中,创建一 ...

  8. ASP.NET Aries 高级开发教程:表单检测字段是否已存(番外篇)

    前言: 昨天刚好有人问了这个问题,因此就针对这个问题,补上一篇吧. 正文: 如图:在用户编辑列表中,用户名是会自动检测是否已存在的. 具体对应的Html内容如下: <label><e ...

  9. ASP.NET Aries 高级开发教程:行内编辑事件怎么新增数据到后台(番外篇)

    前提: 今天又网友又提出了一个问题,说行内编辑保存之前,怎么新增一些数据提交到后台? 对方说看了源码,也没找到怎么处理,这里就写文给解答一下. 解答: 于是我看了一眼源码,只能说你没找到地方: 第12 ...

随机推荐

  1. Swift学习字符串、数组、字典

    一.字符串的使用 let wiseWords = "\"I am a handsome\"-boy" var emptyString = "" ...

  2. SAP系统三层架构

    SAP系统三层架构:表示层,应用层,数据库层   表示层:也可以说个人用户client.由表示层提出数据请求,然后应用层对请求进行处理,再通过数据库层DBMS系统对数据进行处理.   从应用服务器的缓 ...

  3. 为何没有asia/beijing时区?

    Asia/Beijing 这个时区是消失了么? 大约1小时 ago @tinyfool 对啊,我就奇怪为什么北京时间就要用上海和成都... 大约1小时 ago @tinyfool @CatChen我所 ...

  4. 如何将数据库中存的树转化为树形列表(以easyui的tree为例)

    很多时候,我们会把一棵树存放到数据库中,当前台需要展示一个树形列表时,将这棵树读取出来并显示,这个过程是怎么实现的呢? 这篇文章是以构造一棵easyui前台框架的一个树形列表为例,后台框架是sprin ...

  5. Golang 嵌套map赋值办法

    http://my.oschina.net/sol/blog/159060 m := map[string]map[string]string{} mm, ok := m["kkk" ...

  6. Java 读书笔记 (十二) Java Character 类

    在实际开发过程中, 我们经常会遇到需要使用对象,而不是内置数据类型的情况. 为了解决这个问题, Java语言为内置数据类型char提供了包装类Character类. 可以使用Character的构造方 ...

  7. Python 可视化工具 Matplotlib

    英文出处:Chris Moffitt. Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表.本文主要介绍了在学习Matplotlib时 ...

  8. MAC下Intellij IDEA常用快捷键

    alt+f7 : 查找在哪里使用 command+alt+f7 : 这个是查找选中的字符在工程中出现的地方,可以不是方法变量类等,这个和上面的有区别的 command+F7 : 可以查询当前元素在当前 ...

  9. conn.go 源码阅读

    ),         Conn: conn,     }     return k, v } // 返回远程节点地址 func (self *Connect) Addr() string {      ...

  10. util.go 源码阅读

        }     h := md5.New()     baseString, _ := json.Marshal(obj)     h.Write([]byte(baseString))      ...