07.02.03.tiptop集成篇(4gl扩展功能 集成java:封装java的poi包设配4gl 案例 导入excle)
本页目录1、案例2、测试闲鱼DKLi1717 引用POI包Excel批量处理s_poi_excel.4gl下载excle的模板到桌面anmt200.xlsx案例p_test.4fd?xmlversion1.0encodingUTF-8?ManagedFormgstVersion22800nameManagedFormuid{2b41e64b-b5a8-42eb-a856-c2e80d7d16b3}AGSettings/RecordadditionalTablesjoinLeftjoinOperatorjoinRightnames_emailorderuid{d7e34c48-750d-4f0b-a17b-f04e0949bb58}where/RecordadditionalTablesjoinLeftjoinOperatorjoinRightnames_pmdorderuid{63a46eb9-f9b8-4526-a2cd-4faf9f248688}where/FormgridHeight6gridWidth40nameFormtextFormVBoxgridHeight6gridWidth38nameVBox1posX1posY0GridgridHeight4gridWidth38nameGrid1posX0posY1//VBox/FormDiagramLayout![CDATA[AAAAAgAAAEwAewBkADcAZQAzADQAYwA0ADgALQA3ADUAMABkAC0ANABmADAAYgAtAGEAMQA3AGIALQBmADAANABlADAAOQA0ADkAYgBiADUAOAB9QFwAAAAAAABAaqAAAAAAADWhysCDEmAQAAAEwAewA2ADMAYQA0ADYAZQBiADkALQBmADkAYgA4AC0ANAA1ADIANgAtAGEAMgBjAGQALQA0AGYAYQBmADkAZgAyADQAOAA2ADgAOAB9QCQAAAAAAABAJAAAAAAAADRaHKwIMSeAQ]]/DiagramLayout/ManagedFormp_test.4glIMPORT os IMPORT JAVA org.apache.poi.xssf.usermodel.XSSFWorkbook IMPORT JAVA org.apache.poi.xssf.usermodel.XSSFSheet IMPORT JAVA org.apache.poi.xssf.usermodel.XSSFRow IMPORT JAVA org.apache.poi.xssf.usermodel.XSSFCell DATABASE ds GLOBALS../../config/top.globalGLOBALS DEFINE g_curs_index LIKE type_file.num10 DEFINE g_row_count LIKE type_file.num10 DEFINE filename STRING DEFINE workbook XSSFWorkbook DEFINE sheet XSSFSheet DEFINE row XSSFRow DEFINE cell XSSFCell END GLOBALS MAIN DEFINE p_row,p_col LIKE type_file.num5 LET p_rowARG_VAL(1)LET p_colARG_VAL(2)LETg_curs_indexARG_VAL(3)LETg_row_countARG_VAL(3)OPTIONS FORM LINE FIRST 2, MESSAGE LINE LAST, PROMPT LINE LAST, INPUT NO WRAP DEFER INTERRUPT IF(NOT cl_user())THEN EXIT PROGRAM END IF WHENEVER ERROR CALL cl_err_msg_log IF(NOT cl_setup(CZZ))THEN EXIT PROGRAM END IF CALL cl_used(g_prog,g_time,1)RETURNING g_time LET p_row5LET p_col10OPEN WINDOW test_w AT p_row,p_col WITH FORMczz/42f/p_testATTRIBUTE(STYLEg_win_style CLIPPED)CALL cl_ui_init()CALL test_menu()CLOSE WINDOW test_w CALL cl_used(g_prog,g_time,2)RETURNING g_time END MAIN# mathodName: test_menu# author:DKLi1717 2665252078qq.com# date:Created in 2025-03-14# description: 菜单栏位置FUNCTION test_menu()MENUBEFORE MENU CALL cl_navigator_setting(g_curs_index, g_row_count)ON ACTION import_excel CALL uploadEXCLE()CALL readEXCLE()ON IDLE g_idle_seconds CALL cl_on_idle()CONTINUE MENU ON ACTION locale CALL cl_dynamic_locale()CALL cl_show_fld_cont()ON ACTION qbe_select CALL cl_qbe_select()ON ACTIONhelpCALL cl_show_help()ON ACTION about CALL cl_about()ON ACTION controlg CALL cl_cmdask()ON ACTIONexitLET INT_FLAGFALSE EXIT MENU ON ACTION close LETINT_FLAGFALSE EXIT MENU END MENU END FUNCTION# mathodName: uploadEXCLE# author:DKLi1717 2665252078qq.com# date:Created in 2025-03-14# description: 上传文件到服务器FUNCTION uploadEXCLE()DEFINE l_location STRING, ls_str STRING WHILE TRUE PROMPT ls_str CLIPPED FOR l_location ATTRIBUTE(WITHOUT DEFAULTS)ON ACTION accept EXIT WHILE ON ACTION cancel EXIT WHILE ON ACTION browse_document LET l_locationcl_browse_file()ON IDLE g_idle_seconds CALL cl_on_idle()RETURN END PROMPT END WHILE# 获取上传附件的名称LETfilenamel_location WHILE filename.getindexof(os.path.separator(),1)0LETfilenamefilename.substring(filename.getindexof(/,1)1,filename.getlength())END WHILE LETstatuscl_upload_file(l_location,/u1/out/||filename)IF status THEN CALL cl_err(,abm-019,0)ELSE CALL cl_err(,abm-020,0)END IF END FUNCTION# mathodName: readEXCLE# author:DKLi1717 2665252078qq.com# date:Created in 2025-03-14# description: 读readEXCLE信息FUNCTION readEXCLE()CALL workbook_open(/u1/out/||filename)RETURNING workbookDISPLAYsheets数||workbook.getNumberOfSheets()LETsheetworkbook.getSheetAt(0)#获取第1个sheetDISPLAY行数||sheet.getPhysicalNumberOfRows()LET rowsheet.getRow(1)#获取第2行DISPLAY列数||row.getPhysicalNumberOfCells()LET cellrow.getCell(1)#获取第2列DISPLAY列类型||cell.getCellType()DISPLAY列字符值||cell.getStringCellValue()LET cellrow.getCell(4)#获取第5列DISPLAY列类型||cell.getCellType()DISPLAY列数字值||cell.getNumericCellValue()DISPLAYSFMT(Evaluated value in cell B12 %1, workbook.getCreationHelper().createFormulaEvaluator().evaluate(cell).getNumberValue())END FUNCTION测试# 上传代码cd/u1/toptest/topcust/csub/4gl put s_poi_excel.4glcd/u1/toptest/topcust/czz/4gl put p_test.4gl# 编译代码cd/u1/toptest/topcust/csub/4gl r.c2 s_poi_excelcd/u1/toptest/topcust/czz/4gl r.c2 p_test r.l2 p_test exe2 p_test

相关新闻

SDC命令详解:使用set_sense命令进行约束

SDC命令详解:使用set_sense命令进行约束

相关阅读 SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482 目录 时钟极性 指定引脚、端口列表/集合 指定类型 指定正单调性 指定负单调性 指定停止传播 指定时钟脉冲 指定时钟列表/集合 指定时钟叶节点 Multicorner-Multim…

2026/7/24 20:47:09 阅读更多 →
HarmonyOS ArkTS 实战:实现一个校园竞赛报名与项目管理应用

HarmonyOS ArkTS 实战:实现一个校园竞赛报名与项目管理应用

HarmonyOS ArkTS 实战:校园竞赛报名与项目管理完整实现 摘要项目难度:⭐⭐⭐ 中级实战 适用人群:有 ArkTS 基础、希望学习学习类应用开发的 HarmonyOS 开发者 开发环境:DevEco Studio Next / API 24 代码规模:单页面约…

2026/7/24 20:47:09 阅读更多 →
为什么说12306是技术难度最大的实时交易系统?

为什么说12306是技术难度最大的实时交易系统?

当年12306上线后经常崩溃,铁道部转而寻求IBM、阿里巴巴等业界巨头的协助,以期攻克技术难关,开出的条件是资金无上限,但务必确保问题得到圆满解决。然而,这些行业巨擘最终都婉拒了这一挑战。在后面透露出的信息显示,即便是IBM、Oracle、Sybase这样的国际领先企业,也无法满…

2026/7/24 20:47:09 阅读更多 →

最新新闻

魔兽争霸III终极优化插件:3分钟解决经典游戏所有兼容性问题

魔兽争霸III终极优化插件:3分钟解决经典游戏所有兼容性问题

魔兽争霸III终极优化插件:3分钟解决经典游戏所有兼容性问题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典魔兽争霸III在现代电…

2026/7/24 20:56:12 阅读更多 →
亚克力专用胶工厂如何做到品质领先行业

亚克力专用胶工厂如何做到品质领先行业

在建筑装饰、广告标识、水族工程等领域,亚克力(有机玻璃)因其透光性、可塑性及耐候性而备受青睐。然而,亚克力作为一种典型的难粘材料,其粘接与密封一直是个技术挑战。市面上用于亚克力板的胶粘剂种类繁多,…

2026/7/24 20:56:12 阅读更多 →
深度解析智能投资分析系统:零成本打造专业级股票监控平台

深度解析智能投资分析系统:零成本打造专业级股票监控平台

深度解析智能投资分析系统:零成本打造专业级股票监控平台 在当今数据驱动的投资环境中,daily_stock_analysis项目为个人投资者提供了一套完整的智能股票分析解决方案。这个基于AI大模型的A股/港股/美股自选股智能分析系统,能够实现每日自动分…

2026/7/24 20:56:12 阅读更多 →
AI编写代码,谁来保证质量?

AI编写代码,谁来保证质量?

速度从来不是问题所在,证据才是 AI编程助手已经彻底改变了一名开发者一个上午能完成的工作量。过去需要几个小时才能理清思路、写出草稿的代码,现在几秒钟就能生成。对于探索性工作和快速原型开发来说,这种效率提升确实实实在在。 但在受监…

2026/7/24 20:56:12 阅读更多 →
GBLM-Pruner 论文精读:预训练完成后,梯度还能帮助我们剪枝吗?

GBLM-Pruner 论文精读:预训练完成后,梯度还能帮助我们剪枝吗?

大语言模型剪枝通常依赖三个问题:权重有多大、对应特征是否经常被使用、删除之后会不会明显破坏模型输出。 幅值剪枝只回答了第一个问题,Wanda进一步考虑了第二个问题,而GBLM-Pruner试图利用梯度回答第三个问题。 它的核心观点是&#xff1…

2026/7/24 20:56:12 阅读更多 →
Not All Experts are Equal: Efficient Expert Pruning and Skipping for Mixtu 论文精读:MoE 模型中,所有专家真的同等重要吗?

Not All Experts are Equal: Efficient Expert Pruning and Skipping for Mixtu 论文精读:MoE 模型中,所有专家真的同等重要吗?

传统稠密大语言模型通常在每个 Transformer 层中使用一个完整的前馈网络。Mixture-of-Experts,简称 MoE,则将前馈网络替换为多个相互独立的专家,并由路由器为每个 Token 选择少量专家参与计算。 这种设计减少了每个 Token 实际激活的参数量&…

2026/7/24 20:55:12 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

2026/7/24 0:00:29 阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:29 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻