有关vb网络数据库编程技术;初级;紧急(交设计用)

whf_csdn 2002-05-28 06:05:34
问题描述:
在一大型国际公司内部,sql server数据库服务器位于美国,而在中国的业务部门要与该数据库,进行大量、频繁的数据交换。
如果用vb为该公司中国的业务部门开发一个数据库管理系统软件来解决以上问题,需要用到vb那些技术?可有几种解决方案?
...全文
29 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
whf_csdn 2002-05-29
你说的确实是有点复杂,
客户端,服务器端程序都得写,是吧?
大家在多给点儿详细见解!
回复
marswang 2002-05-28
我們公司使用的是Microsoft Queue,然後進行二次開發
下面的代碼是1/1000的内容,可能看不懂,我要說的是很複雜!!!
Private Sub Main()
On Error GoTo ErrorHandle

Dim SaveQueueName As String
Dim SaveQueueLength As Long
Dim SaveMessage As String
Dim CurMessage As String
Dim strTemp As String
Dim I_Index As Long
Dim tmpInt As Integer

I_Index = 1

'顯示訊息視窗
frmMIRLWIPAdapter.Show

frmMIRLWIPAdapter.txtModule = "ERPINVQty"
frmMIRLWIPAdapter.lstMessage.Clear

'建立Local Data的連線
frmMIRLWIPAdapter.lstMessage.AddItem "Connect Local DB..."
DoEvents
strTemp = gSystemInfo.funAppPath & "\LocalData.mdb"
Set LocalDB = OpenDatabase(strTemp)

'擷取MIRLWIP連線方式
frmMIRLWIPAdapter.lstMessage.AddItem "Get Connection Config..."
DoEvents
gSystemInfo.GerDBConnect

'建立基本主檔的連線
frmMIRLWIPAdapter.lstMessage.AddItem "Connect Basis DB..."
DoEvents
gSystemInfo.CreateBasisConnection

'建立 WIP 的連線
frmMIRLWIPAdapter.lstMessage.AddItem "Connect WIP DB..."
DoEvents
gSystemInfo.CreateWipConnection

'建立MQ連線
frmMIRLWIPAdapter.lstMessage.AddItem "Connect MQ Server..."
DoEvents
Call MQSeriesObject.MQConnect
MQSeriesObject.ConnectionValue = gSystemInfo.cnnBasis

'擷取QUEUE Name
SaveQueueName = GetQueueName("ERPINVQty")
SaveQueueLength = GetQueueLength("ERPINVQty")

frmMIRLWIPAdapter.lstMessage.AddItem "Get MQ Queue Name: " & SaveQueueName
DoEvents

'擷取訊息
Do While SaveMessage <> "END"
SaveMessage = MQSeriesObject.MQGetMessage(SaveQueueName, SaveQueueLength) '每一封訊息(一封訊息中可以有換行資料)
SaveMessage = Trim(Replace(SaveMessage, Chr(10), ""))
SaveMessage = Trim(Replace(SaveMessage, Chr(0), ""))

If SaveMessage <> "END" Then
Do While InStr(SaveMessage, "|") > 0

'檢查是否有換行
tmpInt = InStr(SaveMessage, Chr(13))
If tmpInt > 0 Then
'取出換行前的一段資料
CurMessage = Left(SaveMessage, tmpInt - 1)
Else
CurMessage = SaveMessage
End If

errorLog = ""
errorMode = ""

'根據MQ字串轉入MIRLWIP系統
'訊息解譯
Set rsItem = MsgDecoder(CurMessage)

'轉換為 ERPINVQty 資料表對應欄位資料
If TransferToERPINVData(rsItem) <> 0 Then
errorMode = "Trans"

Else
If EditINVQty() <> 0 Then
errorMode = "Edit"
End If
End If

If errorMode <> "" Then
'錯誤紀錄寫入 error Log table
Call ErrorLogOutput("ERPINVQty", errorMode, errorLog, CurMessage)
End If

frmMIRLWIPAdapter.lstMessage.AddItem "[" & I_Index & "]" & CurMessage & Chr(13)
DoEvents
If tmpInt > 0 Then
SaveMessage = Mid(SaveMessage, tmpInt + 1, Len(SaveMessage) - tmpInt)
Else
SaveMessage = ""
End If
Loop

I_Index = I_Index + 1

End If
Loop



'關閉Local連線
Set LocalDB = Nothing

'關閉MQ 連線
Call MQSeriesObject.MQDisConnect
Set MQSeriesObject = Nothing

'關閉系統所有連線
Call gSystemInfo.CloseConnection(gSystemInfo.cnnBasis)
Call gSystemInfo.CloseConnection(gSystemInfo.cnnWIP)
Set gSystemInfo = Nothing

Unload frmMIRLWIPAdapter

Exit Sub

ErrorHandle:

If Err.Number <> 0 Then
errorLog = Err.Description
'Err.Raise 14521, , Err.Description, Err.HelpFile, Err.HelpContext

Else '無法處理之錯誤

errorLog = "ERPINVQty 主程式失敗!"
End If

errorMode = "Main"

'錯誤紀錄寫入 error Log table
Call ErrorLogOutput("ERPINVQty", errorMode, errorLog)

End Sub
回复
qhzxcz 2002-05-28
是啊,用到通讯协议WINSOCK,TCP/IP.
回复
wujs 2002-05-28
通讯协议WINSOCK,TCP/IP.
回复
funboy88 2002-05-28
winsock控件呀,TCP/IP协议
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告