DataWindow自动匹配多个Retrieve参数

PowerBuilder 9.0与SQL Server 2008 R2兼容性重建实战 PowerBuilder 9.0作为经典32位企业级开发工具,其运行依赖于特定的底层技术栈:.NET Framework 3.5、SQL Server Native Client 10.0、OLE DB Provider for SQL Server及Windows WoW64子系统。由于现代操作系统(如Windows 10/11)默认禁用TLS 1.0、移除旧版ODBC驱动、关闭CSM兼容模式,并采用GPT分区与UEFI启动,导致PB9.0在连接SQL Server时频繁报错“DBMS MSS Micro 阅读详情

DataWindow自动匹配多个Retrieve参数

1 创建一个继承自系统对象DataWindow的用户对象u_dw

2 定义对象函数retrieve,添加函数参数a_argus[],类型为ANY,函数返回值为Long

3 加入如下代码:(假设 retrieve参数数目最大为10)

long ll_retVal
ll_retVal = 0
choose case upperBound(aa_args)
    case 1
        return retrieve(aa_args[1])
    case 2
        return retrieve(aa_args[1], aa_args[2])
    case 3
        return retrieve(aa_args[1], aa_args[2], aa_args[3])
    case 4
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4])
    case 5
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5])
    case 6
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5], &
        aa_args[6])
    case 7
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5], &
        aa_args[6], aa_args[7])
    case 8
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5], &
        aa_args[6], aa_args[7], aa_args[8])
    case 9
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5], &
        aa_args[6], aa_args[7], aa_args[8], aa_args[9])
    case 10
        return retrieve(aa_args[1], aa_args[2], aa_args[3], aa_args[4], aa_args[5], &
        aa_args[6], aa_args[7], aa_args[8], aa_args[9], aa_args[10])
    case else
        return -1
end choose
return ll_retVal

4 在程序中调用方法如下:

ANY la_myArray[]
dw_1.setTransObject(sqlca)
la_myArray[1] = "A String"
la_myArray[2] = 200
dw_1.retrieve(la_myArray)

 

PowerBuilder 9.0 + SQL Server 老系统重装实战:AMD Ryzen平台兼容方案 PowerBuilder 是一款经典的 Windows 客户端开发工具,广泛用于 2000 年代初的企业级业务系统;SQL Server 则是其长期依赖的核心数据库引擎。二者构成的遗留技术栈在现代硬件(如 AMD Ryzen 处理器)和新操作系统(Windows 10/11)上面临严重兼容性挑战,根源在于架构代际断层、运行时环境缺失(如 .NET Framework 3.5)、注册表与驱动加载机制不匹配。解决这类问题的关键,不是简单重装,而是构建精准的软硬件协同适配链——包括离线注入 dotnetfx35、 阅读详情

相关推荐

C#上位机性能优化全攻略:彻底解决界面卡顿+多线程死锁+PLC数据延迟,产线实测稳定运行2年

一开始我们用的是网上找的零散优化代码,根本满足不了要求,后来花了2个月的时间,把之前27条产线的代码整理、重构、优化,做了一套这套方案上线后,连续稳定运行2年零3个月:界面响应时间稳定在50ms以内,多线程死锁率持续为0,PLC数据延迟稳定在150ms以内,系统可用率≥99.99%,帮客户一年省下了超过480万的停线损失、罚款损失和人工成本,客户第二年就把剩下的22条产线也全部交给我们做了,还介绍了3家同行。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 265

PB中常用的函数

dw_list.Retrieve( ) setredraw() 的使用方法,一般情况是 控件名.setredraw(Boolean)

Claude Code 源码一夜流出:会看热闹的人很多,会读源码的人很少

摘要:Claude Code源码意外泄露后,作者分享了高效的源码学习方法:1)Fork仓库保存代码;2)使用Qoder的Repo Wiki功能生成结构化文档和UML图;3)基于Wiki创建可复用的Skill。这种方法比直接让AI总结代码更系统深入,并推荐了可视化学习项目辅助理解。文章强调实践的重要性,提供了具体工具和操作指南。

675

函数Retrieve详解

函数作用:为DataWindow或者Datastore检索数据。在使用该函数之前应该执行过函数SetTransObject或者SetTrans,为数据窗口设置过事务对象。该函数执行之前,首先将数据窗口中已有的数据清除掉,然后将数据库中的数据检索到数据窗口中。所以,如果希望将检索到的数据追加到数据窗口中,需要编写程序。在数据窗口对象的RetrieveStart事件中返回2,即可防止清除掉数据窗口中的

6222

PB datawindow retrieverow事件

pbm_dwnretrieverow dw_4.retrieve的时候,每一行都会触发这个事件 入参:long row 表示当前检索的行 返回值:如果返回非0值,则会停止retrieve。例如:报表中总共有25行数据,在事件中添加代码 if row = 3 then return 1 dw_4.retrieve完后,报表中只会有3行数据 写程序的时候特别要注意这一点...

u010238274的专栏 1080

Datawindow常使用的内容

一、数据窗口中的每一个字段有一个序号,该序号是数据窗口的data   source中排列的序号,在程序中可用序号来对字段进行访问。如:dw_1.Modify( "#3.width   =   10 "),   二、控制数据窗口的某个字段在可修改状态和不可修改状态之间转换,有以下几种方法来实现: A:   taborder属性      dw_1.SetTabOrder(4,   0) 第四个

nuptsv_ice的专栏 4227

datawindow在调试的时候retrieve不出来的原因

这种情况大概有2个常见原因: 1、可能是连接的数据库有问题 2、可能是datawindowretrieve参数和数据库中的参数类型不同

吴半止的专栏 725

powerbuilder中datawindow数据源控件中添加查询参数

问题:如何在quick select类型的datawinow数据源控件中添加查询参数 首先在application上右键——new——datawindow——freedom/grid——OK——选择quick select——选择要查询的表名和列名——OK——next——完成控件的创建。 此时点击顶部菜单栏的design——datasource会出现编辑数据源的对话框如图1:

盐碘 1692

PowerBuilder/PB常用备忘

记录PB相关的知识点和备忘,以备不时之需,同时也可共Pber们参考使用

Zhaof_Notes 2690

PB中DATAWINDOW实时滚动实时检索的问题

解决方法是:在设计DATAWINDOW时,在row>retrieve中将rows as needed选中即可,这时DATAWINDOW叶面有 多大,第一次检索时DATAWINDOW便检索出几条记录,以后每次移动垂直滚动条时DATAWINDOW 便实时从数据库中检索出记录

sqlove的专栏 2640

基于双目视觉的人脸三维重建方法与MATLAB实现教程

本资料聚焦于在MATLAB平台下实现双目视觉系统中的人脸三维建模方法。该技术依赖于两台摄像设备同步采集同一场景的图像,通过分析图像间的差异来推导出目标的三维空间信息。该方法在图像识别、智能导航和身份验证等领域具有重要价值。 双目视觉系统由两组成像单元构成,通过对比左右图像中对应点的位置差异,可以生成视差分布图。视差值反映的是物体与摄像机之间的相对距离,结合几何关系可推算出物体的深度信息,从而构建三维结构。MATLAB因其强大的数值计算与图像处理功能,成为实现此类算法的理想平台。 该压缩包可能包含以下组成部分: 1. **理论说明**:阐述双目视觉的核心概念,如图像配对、视差映射、深度估算等,并介绍MATLAB中相关工具的使用方式。 2. **程序代码**:提供可运行的MATLAB脚本,用于图像输入、特征匹配、视差生成及三维点云构造。代码可能涵盖多种匹配算法,如SIFT、SURF、ORB等,以及视差图优化方法。 3. **图像样本**:包含用于算法测试的多组人脸图像,可能为灰度或彩色图像,用于模拟实际应用环境。 4. **可视化成果**:展示重建后的三维人脸模型,以点云或网格形式呈现,便于评估算法性能。 5. **补充材料**:可能提供与人脸检测、关键点提取、匹配策略等相关的辅助内容,以提升实践效果。 使用者应具备一定的MATLAB操作能力,并对图像处理与视觉算法有初步理解。通过系统学习与实践,可深入掌握双目视觉的运作机制,以及在MATLAB中实现三维建模的技术路径。该资源对希望在计算机视觉领域进行深入研究的学者、开发者或工程技术人员具有参考价值。通过系统学习,用户可掌握相关技术,并将其应用于实际项目中。资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!

上一篇: PB函数大全
下一篇: 用Java实现断点续传(HTTP)
MAX-长老
博客等级 码龄23年 77粉丝 135原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值