PDA

View Full Version : نمایش یک فیلد در Label



Jamshid.Bastani
یک شنبه 08 تیر 1393, 16:48 عصر
با سلام.

من یک دیتابیس را با Access درست کردم.
حالا یک فیلد دارم بخ نام " شماره فاکتور ". به صورت خودکار و P.K می باشد.

می خواهم وقتی یک شخص تا فاکتور را ایجاد نمود و برنامه را باز کرد سریع " شماره فاکتور " را از دیتابیس خوانده و به ما نشان دهد.

چگونه این کار امکان پذیر است ؟؟ اگر ممکن است یک نمونه به من نشان دهید.

سپاس

xminxmin
دوشنبه 09 تیر 1393, 07:46 صبح
سلام من قدیما یه تابع نوشتم که بصورت کلی یک فیلد رو از جدول Accessمی خونه.
TableName نام جدولی هست که باهاش کار دارید
FieldName نام فیلد مورد نظر شماست
FieldKey نام فیلد کلید جدول
FieldKeyValue مقداریکه FieldKey باید داشته باشد
اگر نوع مقادیر شما فرق میکنه می تونید به ویرایش شون کنید.
باز اگر سوالی بود بفرمایید
Public Function GetFieldValue(ByVal TableName As String, _
ByVal FieldName As String, _
ByVal FieldKey As String, _
ByVal FieldKeyValue As VariantType)
GetFieldValue = ""


Dim cn As New OleDbConnection(strConString)
Try
If FieldKeyValue = Nothing Then Return ""


cn.Open()


'Make query
Dim query As String = "SELECT " & FieldName & " " & _
"FROM " & TableName & " "
If VarType(FieldKeyValue) = VariantType.String Then
query &= "WHERE " & FieldKey & "='" & FieldKeyValue & "'"
Else
query &= "WHERE " & FieldKey & "=" & FieldKeyValue & ""
End If


Dim da As New OleDbDataAdapter(query, cn)
Dim ds As New DataSet()
ds.Clear()
If da.Fill(ds, TableName) Then
GetFieldValue = ds.Tables(TableName).Rows(0).Item(FieldName)
End If
If GetFieldValue.ToString.Trim = "" Then GetFieldValue = ""
Catch ex As Exception
MsgBox(ex.Message & vbCrLf & "in: GetFieldValue")
Finally
cn.Close()
cn.Dispose()


End Try
End Function

Jamshid.Bastani
چهارشنبه 11 تیر 1393, 13:17 عصر
سلام.
ممنونم آقا.

من کد رو عوض کردم. میشه یک نگاهی بندازید ببینید درسته یا نه ؟؟

ممنونم.


Public Function GetFieldValue(ByVal TableName As String, Information
ByVal FieldName As String, FactorNum
ByVal FieldKey As String, FactorNum
ByVal FieldKeyValue As Number)
GetFieldValue = ""


Dim cn As New OleDbConnection(strConString)
Try
If FieldKeyValue = Nothing Then Return ""


cn.Open()


'Make query
Dim query As String = "SELECT " & FieldName & " " & _
"FROM " & TableName & " "
If VarType(FieldKeyValue) = VariantType.String Then
query &= "WHERE " & FieldKey & "='" & FieldKeyValue & "'"
Else
query &= "WHERE " & FieldKey & "=" & FieldKeyValue & ""
End If


Dim da As New OleDbDataAdapter(query, cn)
Dim ds As New DataSet()
ds.Clear()
If da.Fill(ds, TableName) Then
GetFieldValue = ds.Tables(TableName).Rows(0).Item(FieldName)
End If
If GetFieldValue.ToString.Trim = "" Then GetFieldValue = ""
Catch ex As Exception
MsgBox(ex.Message & vbCrLf & "in: GetFieldValue")
Finally
cn.Close()
cn.Dispose()


End Try
End Function

Jamshid.Bastani
چهارشنبه 11 تیر 1393, 13:17 عصر
یک پست دوبار ارسال گردید. گزارش داده شدبراب حذف.

xminxmin
شنبه 21 تیر 1393, 08:10 صبح
دوست من، درمورد کاری که شما داری لازم نبود خود سابروتین رو تغییری توش بدی. کافیه ازش استفاده کنی فقط. نمونه:

s= GetFieldValue(TableName,FieldName,FieldKey,FieldKe yValue)