精华内容
下载资源
问答
  • PB动态创建数据窗口

    2012-03-19 09:47:27
    PB动态创建数据窗口,利 用 PB 动 态 创 建 数 据 窗 口,SQLCA.SyntaxFromSQL
  • pb 动态创建数据窗口列,只要修改sql语句就可可以了
  • 当利用PowerBuilder建立数据窗口时,用户通常不能自己选择数据来源和显示类型。如何让用户在应用程序中自己定义数据窗口的数据来源和显示类型呢?为了达到这个目的,我们必须在运行程序阶段根据用户自己的需求,动态...
  • PB数据窗口Grid创建及使用

    千次阅读 热门讨论 2017-06-26 21:40:11
    PB程序中数据窗口Grid的创建及使用简要介绍。

            PB可以通过数据窗口的形式,很方便很简便的方式获得数据库数据,并且还能一个可视化形式进行编辑。这里首先为大家描述如何创建数据窗口Grid及怎么使用创建好的数据窗口。

    创建数据窗口

    前体

           创建Grid之前,需要先保证数据库管理窗口有需要的数据库连接,否则会读取不到数据库而失败的。

    创建Grid

           需要先创建一个新的Grid,file——new——DataWindow——Grid


    选择查询方式

            创建的同时会提示用户选择数据源的获取形式,这里使用Quick Select(快速查询),以后的博客会补充选择形式的不同。


    选择操作表

            接下来会选择你需要选择的数据来源,即选择需要的表(这种形式只能选取一个表进行查询操作)


    选择操作列

            然后继续选择需要的列数据



             接下来是显示格式的设置,一般无特殊要求可以略过,与功能实现无关。



    数据窗口示意图

            最后显示的界面如下,到了这里就不能返回了,所以考虑好了再创建,否则你只能重新创建新的实现你的要求了。


    修改显示

            然后可以对具体的表显示情况进行部分属性设置,例如表头设置、数据对齐方式、字体大小等等




            修饰结果如下


    保存数据窗口

            没有修改的话,就进行保存即可


    查看数据窗口

           这样就可以在左侧目录中查看到这个数据窗口了


            然后,该如何使数据窗口的数据可以显现呢?那么需要在window窗口中添加一个表格控件,进行绑定,从而显示数据了。 

    插入表格


    绑定数据窗口


    选择数据源


    绑定结果


    添加数据填充代码

            注意,没有这段代码的启动,则表格中除了表头之外不会存在任何数据,所以细心的小伙伴们不要忘记这个哦!


            都没有问题之后,我们保存窗口,然后进行运行检验下呗。

    保存window


    正常显示结果



    注意:异常显示

            1、数据库未连接,则会报异常


             2、如果未匹配数据源则不会有任何数据显示


            3、如果配有写填充数据的代码,表中不会查询到任何数据



           后面我会看情况介绍另外一种数据窗口Freeform,有兴趣的朋友可以多多留意哦!

    展开全文
  • 使用数据窗口画笔创建数据窗口对象、然后通过数据窗口控件的DataObject属性将两者联系起来,这种方法虽然已经给开发人员带来了极大的方便性,但并不足以应付各种情况。例如,在应用程序运行时才知道用户要访问哪个表...
  • PB动态数据窗口

    千次阅读 2014-07-03 19:37:03
    创建动态数据窗口 若要动态创建数据窗口,需要使用函数Create,该函数的语法如下: dw_1.Create(syntax{,errorbuffer}) 其中,dw_1是数据窗口控件的名称,该数据窗口控件要和新创建数据窗口对象相关联。...

    〓创建动态数据窗口
    若要动态创建数据窗口,需要使用函数Create,该函数的语法如下:
    dw_1.Create(syntax{,errorbuffer})
    其中,dw_1是数据窗口控件的名称,该数据窗口控件要和新创建的数据窗口对象相关联。syntax是用来描述创建数据窗口对象的确切语法的字符串。errorburrer是可选项,用来保存创建数据窗口对象过程中发生的错误信息。如果不指定该参数,就会在发生错误时显示一个错误信息的提示窗口。如果创建成功该函数返回1,否则返回-1,如果参数为null则函数返回null。
    由于Create函数成功创建数据窗口对象后,要改变dw_1数据窗口控件所关联的数据窗口对象,因此,需要重新为数据窗口设置事务对象(使用函数SetTransObject或者SetTrans)。
    获取创建数据窗口的语法有多种方法,可以对相关的SQL语句使用SyntaxFromSQL函数,也可以使用对已经创建好的数据窗口对象使用LibraryExport函数。因为创建数据窗口的语法比较复杂,即使使用了LibraryExport输出已有数据窗口对象的语法,操作起来也相当费劲。所以,更为通用的是前面一种方法。这种方法配合一定的编程技巧,让用户指定要创建
    的数据窗口对象的SQL语句,使用户有更多的自由和选择。使用这种方法,肯定用到函数
    SyntaxFromSQL,它的语法是:
    transaction.SyntaxFromSQL(SQLselect,presetation,err)
    其中,transaction是事务对象的名称,该事务对象必须正确地设置了相关参数,并且和数据库建立了联结。SQLselect是用来创建数据窗口的SQL语句,为String类型。presentation是要创建的数据窗口对象的显示风格,为String类型。简单的格式是:
    Style(Type=presentationstyle)
    其中Style和Type都是保留字,presentationstyle的取值有Tabular,Grid,Form,Graph,Group,Label和Nup,其中Tabular是缺省类型。err是用来保存函数执行时出错信息的string类型的变量。
    *关于函数SyntaxFromSQL的参数presentation可以有更复杂的语法。其格式是:
    "Style ( Type=value property=value ... )
    DataWindow ( property=value ... )
    Column ( property=value ... )
    Group groupby_colnum1 Fby_colnum2 ... property ... )
    Text property=value ... )
    Title ( 'titlestring' )"
    使用这样的格式,可以详细定义要创建的数据窗口对象的外观。


    〓在很多情况下都需要一个数据窗口控件和不同的数据窗口对象关联。可以通过修改数据窗口控件的dataobject属性来实现。在修改了这一特性之后,数据窗口控件就不再具有与它相关的事务处理对象了,应该再重新为数据窗口设置事务对象。*如果为数据窗口设置了行焦点标志,在修改了dataobject属性后应该重新设置行焦点标志。


    〓获得数据窗口的SQL语句
    有时需要修改数据窗口对应的SQL语句,以便构造查询应用。这时,首先就要读取数据窗口当前的SQL语句,然后再对where子句进行修改。可以有多种方法获取SQL语句。最常用的是使用函数GetSQLSelect,它的语法如下:
    dw_1.GetSQLSelect()
    其中,dw_1是数据窗口控件的名称,可以是子数据窗口或datastore等。函数执行正确则返回对应的SQL语句,否则返回空字符串("")。
    另外,还可以使用Describe函数描述数据窗口对象的相关属性来获得。在使用该函数时,如果数据宙口联结到数据库则返回真正的SQL语句,否则返回数据窗口的PBselect语句。PBselect语句是数据窗口的专用语法,和SQL语句有很大的区别,但也是从SQL语句转化而来的。数据窗口对象有三个属性用来保存SQL语句,它们是的table.select、table.SQLselect、table.select.attribute。这些属性获得的SQL语法稍微有区别。下面是获取一个数据窗口SQL语法的不同的语句:
    string ls_sql
    ls_sql = dw_1.GetSQLSelect()
    ls_sql = dw_1.Describe("datawindow.table.select")
    ls_sql = dw_1.describe("datawindow.table.SQLselect")
    ls_sql = dw_1.describe("datawindow.table.select.attribute")


    〓修改数据窗口的SQL语句
    使用上面介绍的方法获得SQL后,可以进行修改加工,然后重新应用于数据窗口对象。使用这种方法可以创建功能比较强大的查询程序。
    和提取语法一样,也有两种修改SQL的方法:使用函数Modify或者SetSQLSelect。不管使用哪种方法,修改完SQL语句后都要重新设置事务对象。比较常用的是后一种函数,它的语法是:
    dw_1.SetSQLSelect(statement)
    其中,dw_1是要重新设置SQL语句的数据窗口控件名称,可以是子数据窗口或者datastore。statement是一个包含合法SQL语句的字符串。该函数正确执行返回1,否则返回-1。另外,对于新的SQL语句有很多需要注意的地方:
    (1)字段的类型和个数必须和原SQL语句相同;
    (2)原来的SQL语句中定义了检索变量时,就不能重新设置SQL语句。
    如果原来的数据窗口可以修改数据库中的数据表,那么重新设置时,PowerBuilder把和原来主键位置相同的字段仍然作为新的主键。如果碰到了下面的两种情况,则将使数据窗口无法更新:
    a)from于句中包含多个数据表名;
    b)数据窗口可以更新的是数据库的计算列。
    使用相应的Modify函数和相应的语法也可以修改数据窗口的SQL。例如:
    dw_1.modify("datawindow.table.select=~"select name,sex,from addresswhere sex='男'~"")
    也可以直接使用语法来修改数据窗口的SQL语句。例如,上面的语句可以改写成:
    dw_1.datawindow.table.select="select name,sex,from address where sex='男'"
    然而这种方法无法验证SQL语句是否正确,不如使用Modify函数,但是上面这种方法的执行速度比较快,如果能够确保准确无误,这种方法还是可以考虑的。可以看出它的语法和上面的相同。
    这里的技巧是,如果在运行时需要对数据窗口的SQL语句进行修改,创建没有where子句的数据窗口比较好些。因为where子句可以在动态修改时添加,sort可以在运行时使用setsort函数实现。这样,程序运行时处理数据窗口的SQL语句就比较方便。
    下面介绍一个在程序运行时动态修改数据窗口的SQL语句的实例。在该例子中,使用数据窗口控件函数ModIfy可以修改数据窗口对象中的控件的属性。脚本如下:
    String ls_SQL,ls_where,ls_select
    ls_SQL = dw_1.Describe("DataWindow.table.select") //获取数据窗口当前的SQL语句
    If Pos(ls_SQL,"where") > 0 Then //如果有where子句(有可能是运行时添加的)
    ls_select = Left(ls_SQL,pos(ls_SQL,"where") - 1) //取where前面的内容
    Else
    ls_select = ls_SQL //如果没有where子句则直接赋值
    End If
    ls_where = " where xm like '郭%' order by xm"//where子句。可以设计界面让用户构造
    ls_SQL = ls_select + ls_where //添加where子句
    If dw_1.SetSQLSelect(ls_SQL) = 1 Then
    dw_1.Retrieve()
    End If
    在上面的例子中,where条件都是固定的。也可以设计界面,让用户指定条件来查询数据。该脚本可以编写成一个函数,将where子句作为参数,将是否成功设置SQL作为返回值,在用户每次指定查询条件进行检索时调用该函数。


    〓其他

    *GetFileOpenName(title,pathname,filename{,extension{,filter}})
    功能:Displays the system's Open Filedialog and allows the user to select a file or enter a filename.(打开选择文件对话框)
    --具体请见PB帮助

    *LibraryDirectory ( libraryname, objecttype )
    功能:Obtains a list of the objects in aPowerBuilder library.(获得PBL中的对象)
    --具体请见PB帮助

    *long dwcontrol.ImportString ( string string {, long startrow {, longendrow {,long startcolumn {, long endcolumn {, long dwstartcolumn } } } } } )
    功能:Inserts data into a DataWindowcontrol or DataStore from tab-delimited data in a string.(把字符串数据插入到数据窗口中)
    --具体请见PB帮助

    展开全文
  • PB数据窗口

    2014-07-29 15:28:58
    数据窗口也是普通的数据窗口对象,没有什么特殊的地方,它的创建方法、可以使用的控件、编程时可以使用的函数等,都和普通的数据窗口相同。特殊的地方只是因为它放在了父数据窗口中,需要和父窗口进行配合。 **当...

    **通常的子数据窗口也就是下拉数据窗口。子数据窗口也是普通的数据窗口对象,没有什么特殊的地方,它的创建方法、可以使用的控件、编程时可以使用的函数等,都和普通的数据窗口相同。特殊的地方只是因为它放在了父数据窗口中,需要和父窗口进行配合。

    **当为数据窗口中某字段指定为下拉数据窗口编辑风格时,必须提供以下三个属性:
    a)子数据窗口名称。
    b)显示字段名称:该字段中的内容显示在父数据窗口的字段上,只是显示。
    c)数据字段名称:该字段中的内容要赋给父数据窗口的字段,要保存到数据库中。
    分别对应数据窗口画板的Edit属性页中的:Eidt Style、Display Column、Data Column。
    *子数据窗口不能再包含子数据窗口;父数据窗口可以对其包含的子数据窗口进行插入、删除、检索和保存等操作。

    **获取子数据窗口的引用是进行其他操作的前提,使用函数GetChild来获取指定字段的子数据窗口。该函数的语法如下:
    dw_1.GetChild(name,dwchildvariable)
    其中,dw_1.是数据窗口控件名称;name为字段名称,为string类型;dwchildvariable为datawindowchild类型变量,该变量在函数正确执行后保存对子数据窗口的引用。该函数正确执行则返回1,否则返回-1。
    在获取了子数据窗口的引用之后,就可以捡索子数据窗口中的数据了。但是,检索子数据窗口的情况比较多,并且也有多种方法。


    **保证子数据窗口中的数据更新
    用户使用下拉数据窗口录入数据时,其中的数据并不一定有用户需要的。在某些情况下不允许用户再输入其他值,否则可能造成数据的不一致性,这时就可以不再编写其他的脚本。但在允许用户录入时,就需要把用户录入的数据保存在子数据窗口对应的数据表中,以便以后数据录入时不再重复输入该数据。这时就应该编写脚本保存该数据了。


    **检索子数据窗口
    在应用中,对子数据窗口的编程不是检索数据,就是更新其中的数据。检索数据时,如果只显示子数据窗口中同父数据窗口中某字段取值对应的数据,这时子数据窗口的定义就应该有检索参数。根据检索和更新数据这两个因素,可以将检索数据的情况划分成以下三种:
    a)没有条件限制,并且不允许更新。
    b)没有条件限制,并且允许更新。
    c)有条件限制,不管是否可以更新。
    检索子数据窗口有两个时机,一个是在子数据窗口下拉时,另一个是在父数据窗口检索时。在子数据窗口打开时进行数据检索,每次录入该字段时都要进行,所以可以保证子数据窗口中的数据是最新的,所以这样的检索是在数据可以更新的情况下才使用。而不允许更新时,子数据窗口中的数据总是和父数据窗口检索时相同,如果不根据其他字段取值检索数据,就没有必要每次录入时都进行检索,只要在窗口打开时进行检索就可以了;当要根据其他字段取值检索数据时,还得在每次下拉子数据窗口时进行检索。
    *和父数据窗口共享事务对象
    在和父数据窗口共享事务对象的情况下的编程最简单。因为子数据窗口可以和父数据窗
    口共享事务对象,只是简单地对父数据窗口进行检索,即可将子数据窗口中的所有数据自动检索出来。一般在窗口的open事件中编写如下脚本:
    dw_1.settransobject(sqlca)
    dw_1.retrieve()
    一种特殊的情况需要注意。当A、B两个数据窗口共享数据时,如果其中B有子数据窗口,A设置事务对象而B没有设置,当A使用函数Retrieve检索数据后,B因为共享数据也会自动获得数据,但是B中的下拉子数据窗口的字段只能显示编码而不能显示对应的汉字,即使该下拉子数据窗口的属性中显示列、数据列都设置正确也是如此。只有当数据窗口B设置了事务对象才能在A检索数据之后正确显示下拉子数据窗口Display Value中指定的字段数据。
    *检索子数据窗口的数据
    因为用户随时都有可能录入了新数据,为了保证子数据窗口中显示最新数据,每次打开子数据窗口时都重新进行数据检索。用户在打开子数据窗口之前一般有鼠标点击动作,所以可以在数据窗口控件的clicked事件中编写脚本。例如,在一个进行工资人事管理的软件中,人事信息保存在employee库中,录入工资的数据窗口要选择职工时可以使用下拉数据窗口。子数据窗口至少包含职工姓名name和职工身份证号no。下面是完整脚本:
    datawindowchild ldwc_data
    if dw_1.getchild("name",ldwc_data) <> -1 then
    ldwc_data.settransobject(sqlca)
    ldwc_data.retrieve()
    end if
    在很多书籍和讲座中,都使用上面的编程方法进行子数据窗口的数据检索。(*可以在单击事件中先判断是否是下拉的字段列,再进行检索子数据窗口)实际上,还有更为合理的解决办法。因为上面的方法不管用户点击的是否是下拉数据窗口,都要执行脚本,并且用户选择下拉数据窗口中的数据之前也并不总是首先点击鼠标,还可能通过键盘来操作,不仅这样做的程序执行效率不高,而且逻辑上也不是很严格。如果有这样一个事件,该事件只有当用户使用下拉数据窗口时才触发,这样脚本的执行效率就会高了。另外,上面的解决方法,在一个数据窗口中有多个子数据窗口时也比较麻烦,必须书写多个类似上面的脚本,对每个有下拉数据窗口的字段都进行判断,烦琐的很;并且一旦字段的名字发生变化时,脚本也必须加以修改,通用性也很差。下面再介绍一种方法。
    首先定义一个自定义事件ue_dropdown,映射pbm_dwndropdown。该事件只有用户下拉数据窗口要打开时触发,所以执行效率比较高。然后在该事件中编写如下脚本:
    datawindowchild ldwc_data
    getchild(getcolumnname(),ldwc_data)
    ldwc_data.settransobject(sqlca)
    ldwc_data.retrieve()
    这样,就可以很好地解决上面提到的烦琐和不通用的问题。
    第二种需要检索数据的情况,是当用户录入了某个宇段时,该字段可以决定其他字段的取值范围,这时就要检索铁决定的字段的子数据窗口中的数据。
    *使用带参数检索
    在检索受其他字段录入影响的字段数据的情况下,子数据窗口的设计应该是带有检索参数的,在适当的事件中使用带参数检索。比如,当用户录入了部门名称后,应该让“职工”,字段的子数据窗口只显示该部门的职工姓名。可以在该数据窗口控件的ue_dropdown(映射pbm_dwndropdown事件)事件中编写如下脚本:
    …… //首先获取子数据窗口的引用。
    child.retrieve(getitemstring(getrow(),"department"))
    当然上面的脚本也可以在数据窗口控件的Clicked事件中编写。
    如果子数据窗口的检索条件总取决于某个固定的字段,可以使用上面的带参数检索。如果取决于多个字段,可以使用过滤来实现。


    **共享子数据窗口
    当同时打开多个包含相同字段的子数据窗口时,有必要保证这些子数据窗口之间的数据同步,这是一个比较重要的问题。因为,如果有一个子数据窗口中,用户输入了新数据并且
    该子数据窗口正确保存,其他子数据宙口如果不能同步反映出来,就会造成很多问题。如果其他用户没有重新输入该数据,这时的情况还好一些,如果又重新输入了该数据,保存会出现错误信息,用户会感觉到莫名其妙。所以,一定要重视这时的同步问题。
    对于同一个客户端同时打开的多个子数据窗口,使用数据共享可以很好地解决它们之间的同步问题。比如,在工资、人事管理软件中,可能同时打开工资和奖金发放窗口,这两个窗口中的数据窗口都有包含身份证号的子数据窗口。下面介绍如何进行同步。
    假设两个窗口的打开有一定的顺序。比如,在工资发放窗口中双击数据窗口时打开人事维护窗口w_rs。在窗口w_gz的数据窗口的dubleClicked事件中编写如下脚本:
    datawindowchild ldwc_data
    if getchild("no",ldwc_data) = -1 then return
    if w_rs.dw_1.sharedata(ldwc_data) = -1 then
    beep(1)
    if messagebox("错误","发生意外错误,是否继续?",yesno,2) = 1 then
    open(w_jj)
    end if
    end if
    上面的脚本保证了对奖金窗口w_jj上数据窗口dw_1中主缓冲区所做的任何更新操作都
    将在子数据窗口child中得到反映。
    当要打开的窗口之间没有顺序,并且打开哪些窗口也不确定时,可以通过定义全局变量来实现。比如,在物资管理系统中,物资名称和对应的代码使用一个数据表来保存。很多数据窗口录入物资时部使用该子数据窗口。可以在该系统中定义全局变量,语句如下:
    datawindowchild gdwc_data
    然后在用到该子数据窗口的窗口open事件中都编写如下脚本:
    datawindowchild ldwc_data
    if getchild("no",ldwc_data) = -1 then return
    if ldwc_data.sharedata(gdwc_data) = -1 then
    ldwc_data.settansobject(sqlca)
    ldwc_data.retrieve()
    end if
    这样,每个数据窗口中的数据更新都可以自动反映到其他的数据窗口中。

     

    展开全文
  • DataWindowChild state_child //说明一个DataWindowChild 类型的..., state_child) ---------若子数据窗口emp_state为复合数据窗口,该如何取值// 得到名称为 emp_state 的子数据窗口对象的引用 IF rtnco...
    //说明一个DataWindowChild 类型的变量
    DataWindowChild state_child 
    integer rtncode 
    rtncode = dw_1.GetChild("emp_state", state_child)
    // 得到名称为 emp_state 的子数据窗口对象的引用 
    IF rtncode = -1 THEN MessageBox( "错误", "不是子数据窗口") 
    // 如果未与数据库建立连接时首先建立连接 
    CONNECT USING SQLCA; 
    // 设置子数据窗口使用的事务对象 
    state_child.SetTransObject(SQLCA) 
    // 使用地区值 北京 检索子数据窗口对象的数据 
    state_child.Retrieve("East") 
    // 设置主数据窗口使用的事务对象并提取数据 
    dw_1.SetTransObject(SQLCA) 
    dw_1.Retrieve()
    展开全文
  • PB_数据窗口展示数据问题

    千次阅读 2013-12-27 15:33:27
    今天简单总结下PB数据窗口(DW)显示数据实现(不包含界面),如有不对地方,请大家多多指点,谢谢! 目标 : 实现如下图片的数据显示功能,并且在点击“学生信息列表(dw_userinfo_list)”某一行后要在“学生信息...
  • 创建数据有多种方法,比如用SELECT语句创建,这里最简单,还有用自定义字创建数据窗口,这个比较复杂, 下面就这两种方法介绍一下: 1、用SELECT创建数据窗口  string ls_sql = 'select * from mara'  ...
  • PB-数据窗口缓冲区与数据修改状态

    千次阅读 2015-07-10 10:06:35
    PB-数据窗口缓冲区与数据修改状态  2013-04-12 17:29:44| 分类: PB编程 | 标签:pb dw 数据窗口  |举报 |字号大中小 订阅         用微信 “扫一扫” 将文章分享到朋友圈。 ...
  • PB 动态创建数据窗口

    千次阅读 2014-03-05 14:07:46
    在实际应用中,经常需要根据用户需求来动态创建数据窗,一般方法是这样的。  在一个window中加入一个数据窗控件,如dw_new,但是该数据窗没有data object,(空白的)就可以用以下语法来创建:  dw_new.create(ls_...
  • pb9 下拉数据窗口动态增量查询 运行效果 http://hi.csdn.net/attachment/201012/31/0_129375439521r0.gif
  • PB创建数据窗口时数据源的使用方式

    千次阅读 热门讨论 2017-06-26 22:01:34
    PB提供5种数据源:Quick Select(快速选择类型)、SQL Select(SQL选择类型)、Query(查询类型)、External(外部类型)和Stored Procedure(存储过程类型)。
  • pb 数据窗口 拖拽 dragdrop

    热门讨论 2010-08-25 08:03:58
    pb 数据窗口 拖拽 dragdrop 运行效果 http://hi.csdn.net/attachment/201008/25/0_12826945310m12.gif
  • PB datawindows 动态创建数据窗口

    千次阅读 2015-02-02 15:33:35
    PB datawindows 动态创建数据窗口 分类: 专业技能工作积累2011-08-04 16:521376人阅读评论(0)收藏举报 powerbuildervariablesobjectstringuser数据库  在实际应用中,经常需要根据用户需求来动态创建数据...
  • PowerBuilder(pb) 如何更新动态创建数据窗口2018-12-022008-06-13 14:49PowerBuilder(pb) 如何更新动态创建数据窗口为了使动态创建数据窗口可以被更新,需要在使用dw_control.update()之后进行几个相关的设置...
  • PB】动态创建数据窗口

    千次阅读 2013-02-17 10:29:58
    当利用PowerBuilder建立数据窗口时,用户通常不能自己选择数据来源和显示类型。如何让用户在应用程序中自己定义数据窗口的数据来源和显示类型呢?为了达到这个目的,我们必须在运行程序阶段根据用户自己的需求,动态...
  • PB数据窗口

    千次阅读 2010-04-09 10:31:00
    ★SetTransObject语法:dwcontrol.SetTransObject ( transaction )功能:给数据窗口或者datastore控件dwcontrol设置事务对象transaction,缺省事务对象是SQLCA。返回值:成功设置事务对象则返回1,执行过程中发生了...
  • dw2xls for pb10 数据窗口导出到EXCEL,这个是本人测试过可用的,COPY文件里的DLL及PBD,然后关闭打开的窗口,右击PBT,选属性,然后把这PBD导入就可以用了。 用法:uf_save_dw_as_excel(dw_3,ls_file) 如:string ...
  • 自己写的动态创建数据窗口脚本,希望对初学者有用
  • PB 数据窗口对象

    2017-07-13 19:15:07
    数据窗口对象的数据源 ---------- PB提供5种数据源:Quick Select(快速选择类型)、SQL Select(SQL选择类型)、Query(查询类型)、External(外部类型)和Stored Procedure(存储过程类型) ---------- Quick Select ...
  • PB数据窗口的修改属性

    千次阅读 2016-03-21 15:30:10
    数据窗口对象非常强大的原因之一就是能够很容易地修改数据库。当用户修改了数据窗口中的数据,插入了新的数据行或者删除了数据行以后,只要调用update()函数就可以将修改了的数据保存到数据库中。但是,这需要一个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,535
精华内容 3,414
关键字:

pb创建数据窗口