GeneXus笔记Excel导入
- 参数初始化 * : InitParm
- 确定excel的title 定位数据* : MatchTitleIndex
- 读取Excel : ReadExcelData
- 校验数据库数据 : ValidateInDB
- 表内数值型格式校验 ValidateintegerFormat
- 修改数据库 UpdateDB
/*--------------主程序-------------*/
/*1、参数初始化*/
Do 'InitParm'
/*2、读取Excel数据,校验表头格式,定位数据*/
Do 'MatchTitleIndex'
&CellRow += 1
do while &ExcelDocument.Cells(&CellRow, &Variable_Index).Text <> '' //这里是读一条就调一次数据库,需要优化&Flag = 0Do 'ReadExcelData'
/*3、校验Excel表内数据*/
/*3.1、数据库数据校验*/Do 'ValidateInDB'
/*3.2、表内数值型数据格式校验*/Do 'ValidateintegerFormat'
/*4、结束数据校验,如果正确,修改数据库,如果不正确,则提示有错误*/ if &Flag = 1&ErrorOutMessage = "部分数据有误,详见数据录入错误日志"elseDo 'UpdateDB'endif&CellRow += 1
enddo
&ExcelDocument.Close()/*导入修改完毕,关闭Excel*//*--------------Sub-------------*/
Sub 'InitParm'&ExcelDocument.Open(&FilePathName)/*打开上传的Excel文件*/&CellRow = 1&ErrorOutMessage = ""
// &Pattern = "^[0-9]*$"/*数值型正则表达式*/&Variabel1_index= 0&Variabel2_Index = 0&Variable3_Index = 0&Variable4_Index = 0&Variable5_Index = 0
EndSub
Sub 'MatchTitleIndex'If (&ExcelDocument.ErrCode <> 0)&ErrorMessage = &ExcelDocument.ErrDescription&ExcelDocument.Close()ReturnEndiffor &iCellIndex = 1 to 100&Title = &ExcelDocument.Cells(&CellRow, &iCellIndex).Textif trim(&Title) = "title1"&Variable1_index= &iCellIndexendifif trim(&Title) = "title2"&Variable2_Index = &iCellIndexendifif trim(&Title) = "title3"&Variable3_Index = &iCellIndexendifif trim(&Title) = "title4"&Variabel4_Index = &iCellIndexendifif trim(&Title) = "title5"&Variable5_Index = &iCellIndexendifendfor&Index = &Variable1_Index* (&Variable2_index+ &Variable3_index+ &Variable4_index+ &Variable5_index) //&Variable1_index是不能缺少的主键if &Index = 0&ErrorMessage = '没有找到应对的列'returnendif
EndSub
Sub 'ReadExcelData'&Variabel1= &ExcelDocument.Cells(&CellRow,&Variable1_Index).Text&Variable2= &ExcelDocument.Cells(&CellRow,&Variable2_Index).Text&Variable3= &ExcelDocument.Cells(&CellRow,&Variable3_Index).Text&Variable4= &ExcelDocument.Cells(&CellRow,&Variable4_Index).Text&Variable5 = &ExcelDocument.Cells(&CellRow,&Variable5_Index).Number
EndSub
Sub 'ValidateInDB'EndSub
Sub 'ValidateintegerFormat'if &Variable1.IsEmpty() or &Variable=''&DataErrorReason = '参数名称不能为空'P_InsertErrorInfo.Call(&UserCode,ErrorType.ImportError,&OriginalFileName,'第'+&CellRow.ToString()+'行'+','+'第'+&MakProductCode_Index.ToString()+'列',&DataErrorReason)&Flag = 1endifEndSub
Sub 'UpdateDB'For eachwhere Attribute1= &Variable1 //这两行可以不用也行&Variable2= Attriable2 //不同的逻辑看自己的Do 'New'EndFor&ErrorMessage = '导入完成'commit
EndSub
Sub 'New'for each //根据颜色名称获取颜色编码where A1= &V1&V2= A2exitendforNewA1= &V1A2= &V2A3= &V3EndNew
EndSub
genexus excel导入
GeneXus笔记Excel导入相关推荐
- Django 2.0.6 学习笔记 13.8 xamin excel导入插件
直接上xadmin/plugin/excel.py的代码: # coding:utf-8import xadmin from xadmin.views import BaseAdminPlugin, ...
- Java后端:10w行级别数据的Excel导入优化记录
一些细节 数据导入:导入使用的模板由系统提供,格式是 xlsx (支持 65535+行数据) ,用户按照表头在对应列写入相应的数据 数据校验:数据校验有两种: 字段长度.字段正则表达式校验等,内存内校 ...
- C# 使用 NPOI 处理Excel导入单元格内容是公式问题
C# 使用 NPOI 处理Excel导入单元格内容是公式问题 引言:今天在处理业务的时候,碰到导入Excel数据不成功的问题,那么就在这里做下笔记吧. 首先,我们有以下的数据.整块业务逻辑的代码在最后 ...
- 【若依vue框架学习】3.通过Excel导入数据/通过反射读取注解
目录 通过Excel导入用户 前端视角: 后端视角 简单笔记,了解内容即可 通过Excel导入用户 前端视角: 其中的updateSupport=0 代表不更新已经存在的数据 后端视角 如果需要E ...
- excel导入数据校验_从Excel数据验证列表中选择多个项目
excel导入数据校验 You've probably used an Excel data validation drop down list, where you can click the ar ...
- excel导入数据校验_Excel数据验证更新
excel导入数据校验 I've finally updated my Data Validation intro video, so it shows the steps for creating ...
- excel导入数据校验_使用Excel数据验证限制日期范围
excel导入数据校验 Yesterday, one of my clients emailed to let me know that she was having trouble entering ...
- excel导入数据失败_Excel数据验证失败
excel导入数据失败 Data validation is one of the best features in Excel. You can use it to create drop down ...
- excel导入数据校验_Excel数据验证错误消息
excel导入数据校验 Do you like to use error checking in Excel, so that problem cells are flagged, or do you ...
最新文章
- 一加7t人脸识别_一加7T系列国行版开启预约 谷歌Pixel 4系列高清图曝光
- 算法提高课-图论-单源最短路的建图方式-AcWing 920. 最优乘车:bfs求最短路、建图
- 买淘宝特价版,产业升级的证明
- git连接通过ssh连接github
- OpenQA.Selenium.WebDriverException : Failed to start up socket within 45000
- 有/无外网情况下linux安装宋体
- 移动广告平台有哪些,各有啥优缺点?
- python做数组数据加密狗
- 红外接收管硬件电路曲折的调试过程,错误的使用过程记录
- 搜索方法_如何搜索到自己的CSDN博客
- 元宇宙持续引发关注,微软计划明年发布相关产品 | 产业区块链发展周报
- 灵雀云基于 OVN 的 Kubernetes 网络架构解析
- openfeign集成Hystrix的备选方案处理
- 如何安装 Ubuntu 22.04 LTS 桌面版 ?
- 2020成考C语言答案,2020年成人高考语文题库(含历年真题练习题模拟题)
- 超全整理100个 Pandas 函数,建议收藏!
- 将https安全证书导入jdk中
- mysql慢查询常用语句
- mirai 高效率 QQ 机器人框架
- ctf MISC writeup