1、setsqlselect用法:

ls_select=getsqlselect    //通过getsqlselect取得当前数据窗口的查询语句

ls_where="  "          //给变量ls_where赋值,将所要添加的限定条件赋给此变量,但应考虑到select子句与where子句之前的空格

dw_1.setsqlselect(ls_select+ls_where)     //通过setsqlselect将生成的查询语句更新至数据窗口

dw_1.event ue_retrieve()

2、dw_1.modify用法:

Old_Select=dw_1.Describe("DataWindow.Table.SQLSelect ")

ls_select=getsqlselect

ls_where="  "

dw_1.modify("DataWindow.Table.Select='" + ls_select+ls_where + " ' ")

dw_1.settransobject(SQLCA)

dw_1.retrieve()

dw_1.object.DataWindow.Table.Select=Old_Select

更新完后可用以下语句取出select语句查看并调试

messagebox("",string(dw_1.Describe("DataWindow.Table.SQLSelect ")))

网上有贴子说此语句只能更改DW查询语句中的where子句,暂未证实

3、dw_1.object.DataWindow.Table.Select=" " 用法:

此种用法与dw_1.modify()基本相同,只是使用dw_1.modify()时,在()中需要使用双引号把其中的DataWindow.Table.Select以及其后的变量引起来,需要考虑引号的对应关系问题,而此种用法则相对简单一些

Old_Select=dw_1.Describe("DataWindow.Table.SQLSelect ")

ls_select=" select …… from ……"

ls_where=" ……"

ls_having=" …… "

ls_groupby=" …… "

dw_1.object.DataWindow.Table.Select=ls_select+ls_where+ls_having+ls_groupby

dw_1.settransobject(SQLCA)

dw_1.retrieve()

dw_1.object.DataWindow.Table.Select=Old_Select

感觉此语句最为强大,用起来也顺手,我喜欢

注意:在动态修改sql语句时,select段可以修改,但应确保select后面跟随的字段个数以及类型应与建立数据窗口时选择的字段个数和类型相同,否则报错

PB 获取或操作数据窗口语句的方法的更多相关文章

  1. PHP获取POST数据的几种方法汇总

    一.PHP获取POST数据的几种方法 方法1.最常见的方法是:$_POST['fieldname']; 说明:只能接收Content-Type: application/x-www-form-urle ...

  2. pb笔记之数据窗口设置操作

    1 使DataWindow列只能追加不能修改如何使DataWindow中的数据只能追加新记录而不能修改,利用 Column 的 Protect 属性可以很方便的做到这一点,方法如下:将每一列的 Pro ...

  3. PB gird类型数据窗口 设置分组、分组小计、合计

    今天遇到一个需求,gird表格数据如下:  部门  类型 数据   A  类型1  1  A  类型2  2  B  类型1  3  B  类型2  4   合计 10 实际需要显示的结果为:  部门 ...

  4. Ajax异步获取html数据中包含js方法无效的解决方法

    页面上使用js写了一个获取后台数据的方法 function data() { var tab = $("#dic") $.ajax({ url: '../demo.ashx?met ...

  5. PB笔记之数据窗口可编辑的条件

    1.列的tab order为0,列不能获得焦点2.dw_control.object.datawindow.readonly="yes"3.DW.Object.<Column ...

  6. 5.1 Request 获取请求数据的几种方法

    //获取请求头和请求数据 //请求数据(1.通过超链接 2.通过表单) //获取请求数据的时候一般来说 都要先检查 再使用 public class RequestDemo2 extends Http ...

  7. PB笔记之数据窗口添加虚拟列的方法

    1.选择计算域控件: 2.输入公式 3.添加一个输入框作为列名,注意Name必须改为后缀为_t(PB固定识别_t)才可以绑定输入框和计算域作为虚拟列,虚拟列在最后一列时,有可能不能改变宽度,需往前挪才 ...

  8. Android -- 获取接口数据的三个方法

    1.   compile 'com.loopj.android:android-async-http:1.4.9': AsyncHttpClient client = new AsyncHttpCli ...

  9. php获取POST数据的三种方法

    方法一,$_POST $_POST或$_REQUEST存放的是PHP以key=>value的形式格式化以后的数据. $_POST方式是通过 HTTP POST 方法传递的变量组成的数组,是自动全 ...

随机推荐

  1. 洛谷2320 bzoj1192 鬼谷子的钱袋

    题目链接 题意概述:把正整数n分为m个正整数,m个正整数中不允许出现复数个非1的正整数,保证所有小于n的正整数都可以用一部分正整数的和表示,并且使m尽量小. 这道题不知道为啥bzoj上没有要求输出方案 ...

  2. 分布式id的生成方式——雪花算法

    雪花算法是twitter开源的一个算法. 由64位0或1组成,其中41位是时间戳,10位工作机器id,12位序列号,该类通过方法nextID()实现id的生成,用Long数据类型去存储. 我们使用id ...

  3. R 语言输入输出 读取命令函参数

    输入数据 使用键盘输入数据 只能处理小样本,很少使用 在创建 data.txt 字符串之后,用函数 read.table() 创建数据框 data.1.这种方法可以让我们把数据嵌入到R代码中,此处切记 ...

  4. 创建第一个react项目

    前提:已安装部署好nodejs环境 查看nodejs是否安装以及版本 1,win+r输入cmd打开命令行页面 2,路径换到nodejs目录 3,输入node -v查看版本 创建项目 1,win+r输入 ...

  5. [技术博客] 自制 apt deb Repository

    [技术博客] 自制 apt deb Repository (termux) 在修改整合遵循GPLv3的Android terminal app and Linux environment:termux ...

  6. JPA的动态查询拼接

    在使用Spring JPA提供的方法只能进行简单的CRUD,如果遇到复杂的情况就需要我们动态来构建查询条件了.这里我们来看使用CriteriaBuilder如何来构造查询.核心代码: Criteria ...

  7. 微信小程序for循环中传递动态参数

    for循环中的参数,没法传到对应的 js里,所以直接在 wxml页面上跳转 发送参数的 wxml页面 <view class="uploader" wx:for=" ...

  8. spring boot允许跨域(CORS)的配置

    添加@Configuration配置类即可. @Configuration public class WebMvcConfig extends WebMvcConfigurationSupport { ...

  9. Django入门4 数据库设计

    创建mxonline虚拟环境 C:\Users\ws>mkvirtualenv mxonline (mxonline) D:\python\djangostart>pip install ...

  10. Python3基础 import...as 给导入的模块起别名

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...