为了方便,把PBD中的DataWindow导出到PBL中进行处理等。
String ls_pbd_full,ls_pbd_name
String ls_library_list
ls_library_list = getlibrarylist ()
If GetFileOpenName ("选择你需要导出的PBD文件", ls_pbd_full, ls_pbd_name,"PBD", "PBD文件 (*.pbd),*.pbd") < 1 Then Return
If SetLibraryList(ls_library_list + "," + ls_pbd_full) <> 1 Then
MessageBox("错误",ls_pbd_full + "加入当前列表失败!")
Return
End If
String ls_pbl_full, ls_pbl_name
If GetFileSaveName ( "另存为PBL文件选择",ls_pbl_full,ls_pbl_name, "PBL","PBL文件 (*.pbl),*.pbl" ) <> 1 Then Return
If Not FileExists(ls_pbl_full) Then
If LibraryCreate(ls_pbl_full,"DataWindow Export From PBD For RWSort.") <> 1 Then
MessageBox("错误",ls_pbl_full + "创建新文件失败!")
Return
End If
End If
String ls_list,ls_dw_list[],ls_Syntax,ls_name,ls_err
Integer i,li_file,j,k,l
DataStore lds_1
lds_1 = Create DataStore
pfc_cst_string_insur ln_string
ls_list = LibraryDirectory (ls_pbd_full, DirDataWindow! )
ln_string.of_parsetoarray(ls_list,"~n",ls_dw_list)
For i = 1 To UpperBound(ls_dw_list)
ls_name = Mid(ls_dw_list[i],1,Pos(ls_dw_list[i],'~t') - 1)
lds_1.DataObject = ls_name
lds_1.SetTransObject(Sqlca)
ls_Syntax = lds_1.Describe("DataWindow.Syntax")
If Len(ls_Syntax) > 0 Then
If LibraryImport(ls_pbl_full, ls_name, ImportDataWindow! , ls_Syntax, ls_err,ls_name + "Import From PBD For RWSort.") <> 1 Then
MessageBox("错误","导入" + ls_name + "失败!~r~n" + ls_err)
k ++
Else
l ++
End If
Else
j ++
End If
Next
Destroy lds_1
SetLibraryList(ls_library_list)
MessageBox("导入完成","导入成功:" + String(l) + "~r~n导入失败:" + String(k) + "~r~n提取失败:" + String(j))
String ls_pbd_full,ls_pbd_name
String ls_library_list
ls_library_list = getlibrarylist ()
If GetFileOpenName ("选择你需要导出的PBD文件", ls_pbd_full, ls_pbd_name,"PBD", "PBD文件 (*.pbd),*.pbd") < 1 Then Return
If SetLibraryList(ls_library_list + "," + ls_pbd_full) <> 1 Then
MessageBox("错误",ls_pbd_full + "加入当前列表失败!")
Return
End If
String ls_pbl_full, ls_pbl_name
If GetFileSaveName ( "另存为PBL文件选择",ls_pbl_full,ls_pbl_name, "PBL","PBL文件 (*.pbl),*.pbl" ) <> 1 Then Return
If Not FileExists(ls_pbl_full) Then
If LibraryCreate(ls_pbl_full,"DataWindow Export From PBD For RWSort.") <> 1 Then
MessageBox("错误",ls_pbl_full + "创建新文件失败!")
Return
End If
End If
String ls_list,ls_dw_list[],ls_Syntax,ls_name,ls_err
Integer i,li_file,j,k,l
DataStore lds_1
lds_1 = Create DataStore
pfc_cst_string_insur ln_string
ls_list = LibraryDirectory (ls_pbd_full, DirDataWindow! )
ln_string.of_parsetoarray(ls_list,"~n",ls_dw_list)
For i = 1 To UpperBound(ls_dw_list)
ls_name = Mid(ls_dw_list[i],1,Pos(ls_dw_list[i],'~t') - 1)
lds_1.DataObject = ls_name
lds_1.SetTransObject(Sqlca)
ls_Syntax = lds_1.Describe("DataWindow.Syntax")
If Len(ls_Syntax) > 0 Then
If LibraryImport(ls_pbl_full, ls_name, ImportDataWindow! , ls_Syntax, ls_err,ls_name + "Import From PBD For RWSort.") <> 1 Then
MessageBox("错误","导入" + ls_name + "失败!~r~n" + ls_err)
k ++
Else
l ++
End If
Else
j ++
End If
Next
Destroy lds_1
SetLibraryList(ls_library_list)
MessageBox("导入完成","导入成功:" + String(l) + "~r~n导入失败:" + String(k) + "~r~n提取失败:" + String(j))