1. 首页
  2. 全部文档
  3. 开发案例手册
  4. 申请审批管理系统(9节)
  5. 供应商信息维护

供应商信息维护

第五部分:采购管理下供应商信息维护

供应商数据库表设计

供应商数据库表设计

  • 进入“采购管理”页,从右侧元件栏点选数据库表/记录元件命名为“gys”(右侧元件栏->Data Types->Database Record);从右侧元件栏依次放入以下数据类型并命名:一个数字类型(右侧元件栏->Data Types->Number)命名“ID”、四个字符串类型(右侧元件栏->Data Types->Text)分别命名“gongsi”、“lianxiren”、“dianhua”、“youxiang”

文件上传至服务器处理

  • 进入“采购事务管理”->“供应商管理”->“上传供应商”按钮->“<On Click>”->“上传供应商”弹窗元件->“上传供应商”->“批量上传”按钮->“<On Click>”,添加一个“上传供应商”弹窗父层引用对象,添加一个服务器端行为处理元件(快捷键“s”)命名为“上传表格”,为“上传表格”添加一个触发器(快捷键“t”),用实线将父层引用中“ File”用实线箭头传值给“上传表格”的触发器:

上传Excel文件进行记录保存

  • 双击进入“上传表格”,从元件栏添加一个“File”(右侧元件栏->Data Types->File)和一个“Load Excel Table”元件(右侧元件栏->Miscelaneous->Load Excel Table),用实线箭头将“上传表格”上触发器连接给File,将File的Content连接给“Load Excel Table”元件的“File”。添加一个普通行为处理元件(快捷键“a”)命名为“保存数据记录”,为其添加一个触发器(快捷键“t”),并用实线箭头将“Load Excel Table”元件的输入与其相连进行传值,选中“保存数据记录”右键点选“Repeatitive”,将“上传表格”变为多处理对象。如下:

Excel每行数据的可视化对象结构设计

  • 双击进入“保存数据记录”,从右侧点选添加一个数据结构元件(右侧元件栏->Data Types->File),可命名为“表格数据”,用实线箭头将“保存数据记录”的触发器输入连接到“表格数据”上,分别以中文添加以下几个数据类型:一个数字类型命名为“序号”,四个字符串类型命名“公司名称”“联系人”、“电话”、“电话”、“邮箱”
  • 注意这几个类型是对应上传表格的表头的,这里设定好后,上传表中不能有变化,上传表中不可以比这几个名称少,但可以多,多的信息不会传入下一步处理

将Excel数据转为库表记录并保存入数据库

  • 复用一个“gys”数据库表(找到之前在“采购管理”页中设计好的表,右键点选Copy,在需要的位置右键点选Paste(Reuse)或在左侧找到数据库拖入新位置),分别用实线箭头连接:“序号”->“ID”、“公司名称”->“gongsi”、“联系人”->“lianxiren”、“电话”->“dianhua”、“邮箱”->“youxiang”。添加一个记入插入数据库的元件()命名为“插入记录”,用实线箭头连接“gys”数据库表和插入记录的“Record”输入,选中“插入记录”点选添加一个重复记录的输入(右键->Add Element->),目的是如果发现重复记录不会报错,否则数据库插入发现重复项时会报错:

服务器端Excel记录上传完成后的关闭和刷新处理

    • 退出到“上传表格”外,添加两个普通行为处理元件(快捷键“a”)分别命名为“关闭”和“刷新”,为它们添加控制触发器(右键->Add Element->),为“上传表格”元件添加一个结束输出(右键->Add Element->),用两个实线箭头连接结束输出与两个控制触发器,当上传完成记录保存数据库的处理后,关闭窗口,同时刷新显显页面:以击进入“关闭”,从右侧元件栏点选放入一个关闭窗口的元件(右侧元件栏->Display Actions->Close Window),退出后进入“刷新”元件,添加一个“供应商管理”窗口的父层引用对象(右键->Add Ancestor Reference ->供应商管理),从元件栏添加一个刷新元件(右侧元件栏->Display Actions->Refresh),将父层引用对象与刷新连接

供应商页面供应商信息刷新显示

服务器端查询供应商信息并传出记录

  • 退出并进入“供应商管理”页面,添加一个普通行为处理元件(快捷键“a”)命名为“显示供应商信息”,双击进入,先放一个服务器端行为处理元件(快捷键“s”)命名为“信息查询”,双击进入后,添加一个数据库记录查询元件(右侧元件栏->Database->Find)命名为“查询供应商”,复用一个“gys”数据库表/记录并右键点选“Repeatitive”将其变为多记录对象,将查询输出与“gys”数据库表用实线箭头相连,为“信息查询”添加一个输入(快捷键“e”)并右键点选“Repeatitive”将其变为多输出,用实线箭头将“gys”数据库表与“信息查询”的多输出相关,这样就完成了供应商记录从数据库调出:

供应商记录转为显示数据结构

  • 在“显示供应商信息”行为处理元件中,添加一个普通行为处理元件(快捷键“a”)命名为“记录转化”再用将其变为多处理对象(快捷键“r”),为其添加一个触发器(快捷键“t”)和一个输出(快捷键“e”),在其右侧右键添加一个“供应商管理”页的父层引用对象(右键->Add Ancestor Reference ->供应商管理),用实线箭头(快捷键“f”)将“信息查询”的输出与“记录转化”的触发器相连,将“记录转化”的输出与父层引用中“供应商信息表”的“Data”元件相连。分别选中“记录转化”的触发器与输入找到在项目文件中的位置(选中触发器右键点选“Show in Repository Explorer”),拖放进“记录转化”,用实线箭头分别接:“触发器”->“gys表”、“Data数据结构”->“输出”,然后将“gys表”与“Data数据结构”中的数据类型相连:

显示的数据传入供应商表格显示在前端

测试上传记录及上传更新记录

设计已有主键值的记录则更新旧记录

  • 以上完成了供应商信息的管理,按上面设计,可以建一个Excel表,头部命名为:序号、公司名称、联系人、电话、邮箱,并放入一些记录上传测试,注意序号是主键(我们没有定义主键所以第一个默认是主键);主键一样时不会上传信息,也可以在上传按钮中添加一个更新记录元件(右侧元件栏->Database->Update)命名为“更新记录”,将插入时输出“Duplicate”的值传给“更新记录”完成同一序号供应商信息的上传变更