zoukankan      html  css  js  c++  java
  • 如何将excel 数据库表结构生成powerdesign物理模型

    Option Explicit   
    Dim mdl ' the current model 
    Set mdl = ActiveModel 
    If (mdl Is Nothing) Then   
      MsgBox "There is no Active Model" 
    End If 
      
    Dim HaveExcel 
    Dim RQ  
    RQ = vbYes 'MsgBox("Is Excel Installed on your machine ?", vbYesNo + vbInformation, "Confirmation") 
    If RQ = vbYes Then  
       HaveExcel = True  
    ' Open & Create Excel Document 
     Dim x1 '  
      Set x1 = CreateObject("Excel.Application")
      x1.Workbooks.Open "D:/Test.xlsx" 
      x1.Workbooks(1).Worksheets("Sheet1").Activate 
    Else
       HaveExcel = False 
    End If 
      
    a x1, mdl 
      
    sub a(x1,mdl) 
    dim rwIndex 
    dim tableName 
    dim colname 
    dim table 
    dim col 
    dim count 
      
    'on error Resume Next 
    For rwIndex = 1 To 50 step 1                      
        With x1.Workbooks(1).Worksheets("Sheet1")
      'MsgBox "生成数据表结构共计1 ="+CStr(.Cells(2,2).Value ), vbOK + vbInformation, "表" 
       If .Cells(rwIndex, 1).Value = "" Then 
           Exit For 
       End If  
      If .Cells(rwIndex, 3).Value = "" Then 
        set table = mdl.Tables.CreateNew 
            table.Name = .Cells(rwIndex , 1).Value 
            table.Code = .Cells(rwIndex , 2).Value 
            count = count + 1  
       Else   
        colName = .Cells(rwIndex, 1).Value 
        set col = table.Columns.CreateNew  
       'MsgBox .Cells(rwIndex, 1).Value, vbOK + vbInformation, "列" 
        col.Name = .Cells(rwIndex, 1).Value 
        'MsgBox col.Name, vbOK + vbInformation, "列"
         col.Code = .Cells(rwIndex, 2).Value 
        col.Comment = .Cells(rwIndex,1).Value  
        col.DataType = .Cells(rwIndex, 3).Value 
       End If 
      End With 
    Next 
      
    MsgBox "生成数据表结构共计" + CStr(count), vbOK + vbInformation, "" 
     
    Exit Sub 
    End sub
    将EXCEL 数据库表结构生成POWERDESIGN

    代码说明:

    1.) For rwIndex = 1 To 50 step 1                  此处是定义生成的行数,即字段数量50,可以修改此数

    2.)   x1.Workbooks.Open "D:/Test.xlsx"      此处是  excel 数据库表结构存入的位置,可以自定义位置和名称

    3)Test.xlsx  中 的 “应申报统计”数据库表 结构如下:

    应申报统计(表名name) SB_YSBTJ(表名code)  
    会计制度(准则)代码 KJZDZZ_DM CHAR(3)
    是否催报及监控未申报 SFCBJJKWSB CHAR(1)
    作废日期 ZFRQ_1 DATE
    征收方式代码 ZSFS_DM CHAR(3)
    纳税期限代码 NSQX_DM CHAR(2)
    税款所属期止 SKSSQZ DATE
    税款所属期起 SKSSQQ DATE
    月份 YF CHAR(2)
    年度 ND VARCHAR2(10)
    征收品目代码 ZSPM_DM CHAR(9)
    征收项目代码 ZSXM_DM VARCHAR2(5)
    登记序号 DJXH NUMBER(20)
    纳税申报日期 NSSBRQ DATE
    原申报期限 YSBQX DATE
    申报期限 SBQX DATE
    数据来源标志 SJLYBZ CHAR(1)
    征收代理方式代码 ZSDLFS_DM CHAR(1)
    行业代码 HY_DM VARCHAR2(4)
    修改日期 XGRQ DATE
    修改人代码 XGR_DM CHAR(11)
    录入日期 LRRQ DATE
    申报方式代码 SBFS_DM CHAR(2)
    数据归属地区 SJGSDQ CHAR(11)
    录入人代码 LRR_DM CHAR(11)
    主管税务所(科、分局)代码 ZGSWSKFJ_DM CHAR(11)
    主管税务局代码 ZGSWJ_DM CHAR(11)
    税收管理员代码 SSGLY_DM CHAR(11)
    作废人代码 ZFR_DM CHAR(11)
    作废标志 ZFBZ_1 CHAR(1)
    应申报统计UUID YSBTJUUID VARCHAR2(32)
    数据同步时间 SJTB_SJ TIMESTAMP
    税源编号 SYBH_1 VARCHAR2(40)

    将上面的代码保存为vbscript保存至  C:Program Files (x86)SybasePowerDesigner 15VB Scripts 中,命名为:generate_table_structure_for_excel.vbs

    然后在PD菜单  Tool -> Execute Commands->   Edit/Run Script  选择上面所保存的vb script

  • 相关阅读:
    我的Win32开发抉择,Delphi老将复出
    【月入41万】Mono For Android中使用百度地图SDK
    “开源”是什么,能吃吗?
    (转)oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”
    Oracle 去除两边空格
    (转)C#中键值对类型Hashtable与Dictionary比较和相关用法
    (转)对Oracle导出文件错误和DMP文件结构的分析,EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier
    (转)ajax.dll,ajaxpro.dll的区别和用法
    npoi实现 从固定的行读取数据作为表头并返回datable
    字符串格式化测试
  • 原文地址:https://www.cnblogs.com/HondaHsu/p/7054092.html
Copyright © 2011-2022 走看看