如何在pb中创建COM组件并在asp中调用并返回结果集?

2016-02-19 18:23 6 1 收藏

最近很多朋友喜欢上设计,但是大家却不知道如何去做,别担心有图老师给你解答,史上最全最棒的详细解说让你一看就懂。

【 tulaoshi.com - Web开发 】

  启动pb7.0,创建一个不可视的用户对象"uo_customer",新建"object",选择"custom  class"
  类型,点击"ok"。
  在新创建的用户对象中编写如下程序:
  1.声明实例变量"instance  variables",对于com中不支持的类型,请声明为protected类型。protected:
  datastore  ds_datastore
  2.新建三个成员函数:
  int  uf_connect()//用于连结数据库与创建datastore对象。
  代码:
  sqlca.dbms="odbc"
  sqlca.database="webdw"
  sqlca.autocommit=false
  sqlca.dbparm="connectstring=''dsn=webdw;uid=dba;pwd=sql''"
  connect  using  sqlca;
  ds_datastore  =create  datastore
  if  sqlca.sqlcode=0  then
      return  1
  else
      return  -1
  end  if

  void  uf_disconnect()//用于断开数据库连结和释放datastore对象。
  if  isvalid(ds_datastore)  then  destroy  ds_datastore
  disconnect  using  sqlca;

  
  resultset  uf_retrieve()//读取客户信息
  resultset  lrs_customers
  ds_datastore.dataobject="d_customer"
  ds_datastore.retrieve()
  ds_datastore.generateresultset(lrs_customers)//生成结果集
  return  lrs_customers//返回结果集
  最后,保存改对象为"uo_customers"。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  制作一个com组件的工程
  新建"project",选择"Com/mts  component  wizard",确定。
  给工程定义一个名字"p_recordset_com"
  接下来,选择要生成com的用户对象"uo_customer"
  设置生成com组件后的接口属性,这里可以使用缺省。
  然后自己定义组件的program  id为"pb70.uocustomer",
  然后选择该com组件的dll文件名,单击"new",生成"component  server  appid",
  同样生成"type  library  id",最后,选择pb资源文件名,以及注册方式,之后,系统会
  给出用户设置的大致信息,然后选择生成"to  do  list"
  这样就完成一个生成com组件的工程,名为"p_test_com"。

  编译工程并注册组件
  打开已经生成的工程,选择相应的pbl文件及用户对象,编译就可以了

  下面我们创建asp网页来调用这个pb  com
  headtitlepb  com/title/head
  body
  %
  set  customers=server.createobject("pb70.uo_customers")
  iflag=customers.uf_connect()
  set  rs=customers.uf_retrieve()
  'school.cnd8.com
  %
  table
  %rs.movefirst
  do  while  not  rs.eof
  %
  tr
  td%=rs("lname")%/td
  td%=rs("address")%/td
  td%=rs("city")%/td
  /tr
  %rs.movenext
  loop
  rs.close
  customers.uf_disconnect()
  %
  /table
  /body
  保存成asp文件

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  最后,在浏览器中就可以浏览这个asp文件了

  说明:pb7.0和pb8.0基本上差不多,读者可以自己实践。

来源:https://www.tulaoshi.com/n/20160219/1617475.html

延伸阅读
标签: ASP
  /* -----------------------------------     产生论坛分类目录内容表过程    -----------------------------------    */ CREATE PROCEDURE sp_createnew_bbscontent     @tabname varchar(200)='',     @boardid int AS  &nbs...
标签: ASP
       在ASP文件中调用DLL   作者:陈敏杰    动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤。    首先,必须...
BCB中提供了大量的VCL组件,有时难免要在程序中动态创建组件,VCL是用Object Pascal写的,她与C++语言还是存在着一些不同点的,要掌握正确的方法,不防我们先来看一下栈(stack)与堆(heap)的关系。 栈(stack)是存放函数的所有动态局部变量及函数调用和返回的有关信息的一块内存。栈的内存管理严格遵循先进后出的顺序,这一点正是实现函...
       一、Java中的远程方法调用 远程方法调用(Remote Method Invocation, RMI)是Java1.1引入的分布式对象软件包,它的出现简化了在多台机器上的Java应用之间的通信。相比CORBA,RMI功能较弱且只能用于Java系统。 二、实现一个简单的RMI 要使用RMI,必须构造四个主要的类:远...
Java跨平台的特性使Java越来越受开发人员的欢迎,但也往往会听到不少的抱怨:用Java开发的图形用户窗口界面每次在启动的时候都会跳出一个控制台窗口,这个控制台窗口让本来非常棒的界面失色不少。怎么能够让通过Java开发的GUI程序不弹出Java的控制台窗口呢?其实现在很多流行的开发环境例如JBuilder、Eclipse都是使用纯Java开发的集成环境...

经验教程

728

收藏

36
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部