PUBLIC FUNCTION cxmt500_01_excel_imp(p_excelname)
DEFINE p_excelname      LIKE type_t.chr1000  #excel档名
DEFINE r_success        LIKE type_t.num5
DEFINE L_success        LIKE type_t.num5
DEFINE l_excelname      STRING               #excel档名
DEFINE l_count          LIKE type_t.num10
DEFINE li_i             LIKE type_t.num10
DEFINE li_j             LIKE type_t.num10
DEFINE xlapp,iRes,iRow  LIKE type_t.num5
DEFINE l_sql            STRING
DEFINE l_xmdc            RECORDseq LIKE type_t.num5, l_xmda004 LIKE type_t.chr10, l_xmdc027 LIKE type_t.chr500, l_xmdc027_desc LIKE type_t.chr500, l_xmdc027_desc_1 LIKE type_t.chr500,    imaa001 LIKE imaa_t.imaa001, l_xmdc007 LIKE type_t.num20_6, l_xmdc012 LIKE type_t.dat, l_oofg001 LIKE type_t.chr10, imaa003 LIKE imaa_t.imaa003, imaa009 LIKE imaa_t.imaa009, l_xmdc050 LIKE type_t.chr500
END RECORD
DEFINE l_cnt      LIKE type_t.num5LET l_sql="INSERT INTO cxmt500_01_tmp VALUES(?,?,?,?,?,?,?,?,?,?,?,?)"
PREPARE cxmt500_01_ins_p FROM l_sql             WHENEVER ERROR CONTINUELET r_success = TRUELET l_count = LENGTH(p_excelname CLIPPED)LET l_excelname=p_excelname CLIPPED###创建EXCEL实例CALL ui.interface.frontCall('WinCOM','CreateInstance',['Excel.Application'],[xlApp])IF xlApp <> -1 THEN####没有这个文件CALL ui.interface.frontCall('WinCOM','CallMethod',####新建excel文件[xlApp,'WorkBooks.Open',l_excelname],[iRes])IF iRes <> -1 THEN####excel表格为空CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.UsedRange.Rows.Count'],[iRow])IF iRow > 1 THEN######获取excel数据FOR li_i = 2 TO iRowINITIALIZE l_xmdc.* TO NULLCALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',1).Value'],[l_xmdc.seq])                              CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',2).Value'],[l_xmdc.l_xmda004])        CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',3).Value'],[l_xmdc.l_xmdc027])        CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',4).Value'],[l_xmdc.l_xmdc027_desc])   CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',5).Value'],[l_xmdc.l_xmdc027_desc_1])     CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',6).Value'],[l_xmdc.imaa001])        CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',7).Value'],[l_xmdc.l_xmdc007])      CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',8).Value'],[l_xmdc.l_xmdc012])            CALL ui.interface.frontCall('WinCOM','GetProperty',[xlApp,'ActiveSheet.Cells('||li_i||',9).Value'],[l_xmdc.l_xmdc050])     #栏位管控#1、序号栏位不允许重复;IF cl_null(l_xmdc.seq) THEN #检查客户代号是否存在INITIALIZE g_errparam TO NULLLET g_errparam.code = 'aoo-00146'LET g_errparam.extend = " 项次:",l_xmdc.seq,"不能为空"LET g_errparam.popup = TRUECALL cl_err()                            LET r_success = FALSE                         END IF                                           SELECT COUNT(*) INTO l_cntFROM cxmt500_01_tmpWHERE seq=l_xmdc.seqIF l_cnt>0 THEN INITIALIZE g_errparam TO NULLLET g_errparam.code = 'aoo-00146'LET g_errparam.extend = "客户编号:",l_xmdc.l_xmda004," 项次:",l_xmdc.seq,"重复"LET g_errparam.popup = TRUECALL cl_err()LET r_success = FALSE
#                     EXIT FOREND IF IF NOT cl_null(l_xmdc.l_xmda004) THEN #检查客户代号是否存在INITIALIZE g_chkparam.* TO NULL#設定g_chkparam.*的參數LET g_chkparam.arg1 = l_xmdc.l_xmda004               IF NOT  cl_chk_exist("v_pmaa001_10") THEN#檢查成功時後續處理INITIALIZE g_errparam TO NULLLET g_errparam.code = 'aoo-00146'LET g_errparam.extend = " 项次:",l_xmdc.seq,""LET g_errparam.popup = TRUECALL cl_err()                            LET r_success = FALSE
#                        EXIT FOREND IF                END IF   #                   IF NOT cl_null(l_xmdc.imaa001) THEN #检查料件编码直接赋为空值LET l_xmdc.imaa001 = ''
#                      INITIALIZE g_chkparam.* TO NULL
#
#                      #設定g_chkparam.*的參數
#                      LET g_chkparam.arg1 = l_xmdc.imaa001
#                      IF NOT  cl_chk_exist("v_imaa001") THEN
#                         #檢查成功時後續處理
#                         INITIALIZE g_errparam TO NULL
#                         LET g_errparam.code = 'aoo-00146'
#                         LET g_errparam.extend = " 项次:",l_xmdc.seq,""
#                         LET g_errparam.popup = TRUE
#                         CALL cl_err()
#                        LET r_success = FALSE
##                        EXIT FOR
#                      END IF
#                   END IF       IF  cl_null(l_xmdc.l_xmdc007) THENLET l_xmdc.l_xmdc007=0                     END IF IF  cl_null(l_xmdc.l_xmdc012) THENLET l_xmdc.l_xmdc012=g_today                   END IF                    #按客户代码+客户料号在aimm213程序中匹配成品编码CALL cxmt500_01_match_imaa001(l_xmdc.l_xmda004,l_xmdc.l_xmdc027) RETURNING l_xmdc.imaa001,l_xmdc.imaa003,l_xmdc.imaa009EXECUTE cxmt500_01_ins_p USING l_xmdc.*END FOREND IF                   ELSEINITIALIZE g_errparam TO NULLLET g_errparam.code = 'aoo-00146'LET g_errparam.extend = 'NO FILE'LET g_errparam.popup = TRUECALL cl_err()LET r_success = FALSEEND IFELSEINITIALIZE g_errparam TO NULLLET g_errparam.code = 'aoo-00146'LET g_errparam.extend = 'NO EXCEL'LET g_errparam.popup = TRUECALL cl_err()LET r_success = FALSEEND IFCALL ui.interface.frontCall('WinCOM','CallMethod',[xlApp,'Quit'],[iRes])CALL ui.interface.frontCall('WinCOM','ReleaseInstance',[xlApp],[iRes])RETURN r_success
END FUNCTION

T100excel导入写法模板相关推荐

  1. struts2导入excel模板_「微干货」“人员其他数据导入”应用介绍

    前提概要 人员档案资料维护多种多样,经常碰到已经运行一段时间,并且人员档案的基本信息已维护好了:此时,又要补充诸如"教育经历"类似的多行数据,脑壳疼,如何录入可以简便,让我们一起来 ...

  2. python excel模板 生成excel表格_python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图...

    python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 #coding=utf-8 from openpyxl importload_workbookfro ...

  3. Vue 自定义富文本编辑器 tinymce 支持导入 word 模板

    自定义富文本编辑器分为前端项目和后端项目两个部分,首先先说一下前端项目 前端 前端项目地址: https://github.com/haoxiaoyong1014/editor-ui 编辑器名称: t ...

  4. java接口自动化测试-导入xslx模板进行批量检索

    java接口自动化测试-导入xslx模板进行批量检索!!! 如有需要私信我 编写Excel类进行封装参数 ----不间隔直接7-8-9联查 间隔中查找根据添加数组进行查找 建议封装类进行后期调用

  5. Vue3使用路由及配置vite.alias简化导入写法

    文章目录 一.使用路由 1)安装vue-router 2)注册路由 3)使用路由 二.配置vite.alias简化导入写法 1)安装`@types/node` 2)修改vite.config.ts 3 ...

  6. 帝国cms如何导入php模板,帝国CMS模板组导入导出更换模板

    帝国CMS为了随心所欲更换风格与共享模板,EmpireCMS引入了模板组功能. 模板组的主要功能: 模板导出与导入,模板共享更加方便. 多模板并存. 随时更换网站模板. 单个ECMS数据,多站点模板. ...

  7. 帝国cms如何导入php模板,帝国cms模板导入导出及模板组功能介绍

    为了使网站能随心所欲更换风格与共享模板,EmpireCMS引入了模板组功能. 模板组的三大主要功能: 1.模板导出与导入,模板共享更加方便. 2.多模板并存. 3.随时更换网站模板. 4.单个ECMS ...

  8. 帝国cms导入html模板,帝国CMS模板组导入导出更换模板

    帝国CMS为了随心所欲更换风格与共享模板,EmpireCMS引入了模板组功能. 模板组的主要功能:模板导出与导入,模板共享更加方便. 多模板并存. 随时更换网站模板. 单个ECMS数据,多站点模板. ...

  9. html静态模板继承,Django框架(七)-- 模板层:模板导入、模板继承、静态文件...

    一.模板导入 要复用一个组件,可以将该组件写在一个文件中,在使用的时候导入即可 在模板中使用 1.语法 {% include '模板名字' %} 2.使用 ad.html页面 Panel title ...

最新文章

  1. Linux 中 rsync 备份数据使用实例
  2. JAVA 中字符串的截取,要求不能截取半个汉字
  3. leetcode83,删除有序链表中的重复元素
  4. Linux知识--初始linux
  5. 算法21----重塑矩阵 LeetCode566
  6. error while loading shared libraries: libxx.so: cannot open shared object file: No such file
  7. XLSTransformer导出多sheet页
  8. 中交四航局及中广核工程公司学员参加友勤第12期Oracle P6项目管理软件培训班
  9. 51单片机 protues 的仿真程序源文件
  10. 电脑桌面双击计算机图标打不开,电脑双击图标打不开怎么办
  11. 不要拿你的认知来评价别人
  12. css3-文字添加边框
  13. linux 查看运行任务管理器,Linux 的任务管理器
  14. 欢迎大家来到第二期【产品家·实战营】
  15. 香帅金融课之房地产专辑
  16. C4D——建宜家小闹钟
  17. 解码中的AnnexB和avcC两种分割数据方式
  18. 学C语言和英语水平的关系顶多不过半毛
  19. 网页源文件星号怎么显示_【亲测实用】网页隐藏密码查看方法
  20. 【等待事件】序列等待事件总结(enq: SQ - contention、row cache lock、DFS lock handle和enq: SV - contention)...

热门文章

  1. liosam学习总结
  2. 一篇搞定“什么是个人IP”
  3. python词频统计时、文件放哪里_初学python,词频统计小实验
  4. python爬虫模块request_爬虫模块篇【requests】
  5. 2021年P气瓶充装最新解析及P气瓶充装模拟试题
  6. Pango+Qt 列举windows系统字体
  7. 国内外9款常用3D建模软件,你知道几个?教你如何选择软件学习
  8. QML基本类型color的使用
  9. 在使用Quartus时遇到的错误
  10. 泡点温度c语言编程,问个价钱的问题