PDA

View Full Version : ایا می شود برای نوع Autonumber مقدار اولیه تعریف کرد



My_Love_Computer
پنج شنبه 04 دی 1382, 11:12 صبح
با سلام.
می خواستم بدانم که ایا می شود برای نوع Autonumber مقدار اولیه تعریف کرد .
مثلا بجای اینکه از 1 شروع شود از 1000 شروع شود.

Heidarnia
سه شنبه 16 دی 1382, 14:15 عصر
سلام
اینکار امکان پذیر است. اما کلا استفاده از خاصیت Auto Nmber توصیه نمی شود چون در برخی از برنامه ها مشکل زا است.
برای اینکار می بایست یک Table با یک Field درست کنید و سپس در یک Table دیگر تمام Fieldهای برنامه را بنویسید و سپس با یکدیگر ارتباط داده شود. البته Microsoft نیز اینکار را هم توصیه نمی کند چون با مشکلاتی مواجه خاهید شد.برای اطلاع بیشتر از Help Access در مورد Auto Number استفاده کنید که انجام اینکار قدری مشکل است
موفق باشید

maleki
یک شنبه 26 بهمن 1382, 10:16 صبح
ببین چیزی که میخوای قابل انجامه یعنی بقول دوستمون میتونی یک Action Query از نوع Append بسازی و به جدول رکورد اضافه کنی تا به رکورد هزار برسی و بعد 999 تای اونهای انتخاب کنی و بعدشم حذفش کنی اما بزار بگم بازم بیفایدس میدونی چرا چون بالاخره تو منظوری داری از این کارت چون مثلا میخوای کد 1025 بدی بیک شخص خاص هر چیز دیگه ای اما تصور کن یه جای کار مجبور بشی یه رکورد رو حذف کنی مثلا همین رکوردی که کدش 1025 بود ازین به بعد دیگه نمیتونی از این کد استفاده کنی چون اکسس دیگه این کد رو ایجاد نمیکنه پس خوب فکر به کارت - اصلا بمن بگو واس چی میخوای اینکارو بکنی.

Sheerkoshan
یک شنبه 01 آبان 1384, 00:35 صبح
دوست گرامی
برای این کار فقط کافیه در Properties/Format مربوط به Autonumber عدد 1000 را تایپ کنی که با زدنEnter یک Backslash به ابتدای آن اضافه می شود و AutoNumber شما از 1000 شروع می شود

mreza1983
پنج شنبه 21 آبان 1388, 09:51 صبح
دوست گرامی
برای این کار فقط کافیه در Properties/Format مربوط به Autonumber عدد 1000 را تایپ کنی که با زدنEnter یک Backslash به ابتدای آن اضافه می شود و AutoNumber شما از 1000 شروع می شود

دوست عزيز اينكارو با عدد يك انجام دادم ولي فقط از عدد يك شروع ميكنه اگر روي همون فيلد كليك كني دوباره شماره قبلي رو نشون ميده يعني فقط نمايش ميده
تازه واسه شماره بعدي بازهم همون يك رو نشون ميده .

جعفر88
پنج شنبه 20 اسفند 1388, 16:50 عصر
سلام
هماطور كه اساتيد و دوستان ديگه مي دانند از نوع داده AutoNumber مشخص است كه نمي توان آن را ويرايش نموده و سفارشي كرد ولي كد هاي زيادي در زمينه ساخت سري هاي سفارشي هست كه يك نمونش در زير آورده شده :
Option Compare Database
Function MySequenceNum() As Long
Dim db As Database
Dim strSQL As String
Dim strUpdate As String
Dim rs As DAO.Recordset
Dim lngNewNum As Long

On Error GoTo Err_Execute

Set db = CurrentDb()

'Retrieve last number assigned for Your Number
strSQL = "SELECT Last_Assigned_Num FROM tbl_SetAutoNum " _
& "WHERE Code_Desc = 'YourNum'"

Set rs = db.OpenRecordset(strSQL)

'If no records were found, return an error
If rs.EOF = True Then
MySequenceNum = 0
MsgBox ". مقدار اوليه كد از تنظيم نشده"
Else
'Determine your new Number
lngNewNum = rs("Last_Assigned_Num") + 1
'Increment your new Number in tbl_SetAutoNum table by 1
strUpdate = "UPDATE tbl_SetAutoNum " _
& "SET Last_Assigned_Num = " & lngNewNum _
& " WHERE Code_Desc = 'YourNum'"
db.Execute strUpdate, dbFailOnError
End If

rs.Close
Set rs = Nothing
Set db = Nothing

MySequenceNum = lngNewNum

Exit Function

Err_Execute:
'An error occurred, return 0
rs.Close
Set rs = Nothing
Set db = Nothing

MySequenceNum = 0
MsgBox ". خطايي در زمان توليد كد رخ داد"
MsgBox Err.Description

End Function
البته همانطوري دوستان مي دونن اين تابع از يك جدول براي ذخيره كدي كه قرار است از يك مقدار دلخواه شروع شود با دو قيلد CodeDesc( با نوع داده متني براي شرح كد) و Last_Assigned_Num(با نوع داده عددي براي ذخيره آخرين عدد تخصيصي به كد) بهره گيري مي كند . دوستان مي توانند به جاي YourNum از شرح مورد نظر خود استفاده كنند .

m3343kh
پنج شنبه 24 اسفند 1396, 18:19 عصر
بسیار عالی بود دوست عزیز
خلاصه و بسیار مفید