PowerDesigner 16.5 使用VBScript脚本从Excel导入物理数据模型

时间:2021-04-09 09:26:34

本文使用的数据库类型是Oracle 11g

最近在工作中遇到一个问题:数据的设计以表格的形式保存在Excel文件中。(由于保密原因,我只能看到数据库设计文档,无法访问数据库。=_=!)

其中包括Name,Code,DataType,Unit,Length,Precision,Primary,Foreign Key,Mandatory,Comment等字段。

现在我要使用PowerDesigner重新建立这些表的物理模型,但是面对好几百个表,如果使用复制粘贴的方式不但费事费力,而且容易出错。

PowerDesigner提供了很多扩展功能,其中包括从Excel文件导入物理数据模型。

导入的方式有两种,一种是把表的设计模型整理为PowerDesigner要求的格式,另外一种是编写VBScript脚本。

由于编写VBScritp比较灵活,而且把表的设计整理为PowerDesigner需要的格式也比较麻烦,所以通过编写VBScript脚本导入Excel中的模型数据。

 '============================================================
'从Excel文件中导入PowerDesigner 物理数据模型
'
'注意:1,Excel表格中不能有合并的单元格
' 2,列之间不能有空行
'============================================================ Option Explicit '============================================================
'私有全局变量。
'============================================================
Private CURRENT_MODEL_NAME
Private CURRENT_MODEL
Private TABLES
Private EXCEL_APP
Private FILE_PATH CURRENT_MODEL_NAME = "Excel导入"
Set EXCEL_APP = CreateObject("Excel.Application")
FILE_PATH="D:\models.xlsx" '文件的绝对路径 '检查文件是否存在
If CheckFileExsistence() Then
'检查当前是否有已经打开的物理图
Call GetModelByName(CURRENT_MODEL)
If CURRENT_MODEL Is Nothing Then
MsgBox("请先打开一个名称为“" & CURRENT_MODEL_NAME & "”的物理数据模型(Physical Data Model),然后再进执行导入!")
Else
Set TABLES = CURRENT_MODEL.Tables
'根据EXCEL表格创建模型
ImportModels()
End If
Else
MsgBox "文件" + FILE_PATH + "不存在!"
End If '============================================================
'导入模型
'============================================================
Sub ImportModels
'打开Excel文件
Dim Filename
Dim ReadOnly
EXCEL_APP.Workbooks.Open FILE_PATH Dim worksheets
Dim worksheetCount
Set worksheets = EXCEL_APP.Worksheets
worksheetCount = worksheets.Count
If worksheetCount <= Then
Exit Sub
End If Dim index
Dim currentSheet
For index = to worksheetCount
Set currentSheet = worksheets(index)
Call CreateTable(currentSheet)
Next '关闭Excel文件
EXCEL_APP.Workbooks.Close
End Sub '============================================================
'创建表
'============================================================
Sub CreateTable(ByRef worksheet)
Dim cells
Set cells = worksheet.Cells
Dim table '检查具有相同名称的表是否已经存在
Call GetTableByName(table, worksheet.Name)
If table Is Nothing Then
Set table = TABLES.CreateNew
Set table = TABLES.CreateNew
table.Name = cells(, ).Value
table.Code = cells(, ).Value
table.Comment = cells(, ).Value
End If Dim index
Dim rows
Dim col
Set rows = worksheet.Rows
For index = to
If EXCEL_APP.WorksheetFunction.CountA(rows(index)) <= Then
Exit For
End If '判断列是否已经存在
If Not ColumnExists(table, cells(index, ).Value) Then
Set col = table.Columns.CreateNew
col.Name = cells(index, ).Value '字段的中文含义
col.Code = cells(index, ).Value '字段名
col.Unit = cells(index, ).Value '字段的单位
col.DataType = cells(index, ).Value '字段的数据类型
'col.DataType = GenerateDataType(cells(index, 3).Value, cells(index, 4).Value, cells(index, 5).Value) '字段的数据类型
col.Comment = cells(index, ).Value '字段的注释
End If
Next
End Sub '============================================================
'检查文件是否存在
'============================================================
Function CheckFileExsistence
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
CheckFileExsistence = fso.FileExists(FILE_PATH)
End Function '============================================================
'根据数据类型名称,精度和刻度生成数据类型
'============================================================
Function GenerateDataType(dataTypeName, precision, scale)
Select Case Ucase(dataTypeName)
Case Empty
GenerateDataType = Empty
Case "NUMBER"
GenerateDataType = "NUMBER(" & precision & "," & scale & ")"
End Select
End Function '============================================================
'获取指定指定名称的数据模型
'============================================================
Sub GetModelByName(ByRef model)
Dim md
For Each md in Models
If StrComp(md.Name, CURRENT_MODEL_NAME) = Then
Set model = md
Exit Sub
End If
Next
Set model = Nothing
End Sub '============================================================
'根据表名称获取对应的表
'============================================================
Sub GetTableByName(ByRef table, tableName)
Dim tb
For Each tb in TABLES
If StrComp(tb.Name, tableName) = Then
Set table = tb
Exit Sub
End If
Next
Set table = Nothing
End Sub '============================================================
'检查字段是否已经存在
'============================================================
Function ColumnExists(ByRef table, columnName)
Dim col
For Each col in table.Columns
If StrComp(col.Name, columnName) = Then
ColumnExists = True
Exit Function
End If
Next
ColumnExists = False
End Function

下面是测试脚本使用的Excel文件格式:

前三行的第一个单元格中的值分别是:表名称,数据库表名称,表的说明信息。

第4行到低7行都是列信息。

A到H列依次为:列名,字段名称,数据类型,单位,是否主键,是否外键,是否非空,列注释信息。

aaarticlea/png;base64,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" alt="" />

以下是Excel导入的步骤:

1,在PowerDesigner中先打开一个物理数据模型,然后按Ctrl + Shift + X执行脚本。

   执行完成之后的界面如下:

aaarticlea/png;base64,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" alt="" />

导入完成之后PhysicalDiagram_1中并没有显示表的符号。

在PowerDesigner的元数据模型API文档中没有找到对应的API所以就这样将就了;D

2,展开上图所示的Tables文件夹。左键点击图标,把表拖到指定的物理图(Physical Diagram)中。

这样就实现了从Excel中导入数据库物理模型。

aaarticlea/png;base64,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" alt="" />

总结:

这个脚本虽然实现了导入功能,但是还不够完善。第二步要手动完成,因为我没有找到相应的API =_=!。

此外,脚本中没有设置相应的主键,外键和非空约束等。

如果哪位知道如何使用脚本实现第二步,请告诉我!谢谢!