ورود

View Full Version : سوال: مشکل در Auto number



mjShojaei
دوشنبه 16 شهریور 1388, 11:26 صبح
سلام
من یک فیلد دارم که خاصیت این فیلد رو Auto Number گذاشتم. ولی وقتی که یک رکورد رو پاک می کنم . و رکورد جدیدی وارد می کنم عدد این رکورد یک شماره جلو رفته.
چه جوری میشه این مشکل رو حل کرد.
درضمن آیا میشه به جای شروع از 1 ، از یک عدد مثل 101 شروع بشه.
با تشکر

amir4_1363
دوشنبه 16 شهریور 1388, 11:38 صبح
دوست عزیز در مورد این موضوع قبلا بحث شده بگرد پیدا میکنی

mortezamhd
دوشنبه 16 شهریور 1388, 15:31 عصر
من برای اینکار توی قسمت format عددمو میزارم ولی نمیدونم روش درستیه یا نه

mosaArabi
دوشنبه 16 شهریور 1388, 15:48 عصر
با سلام
دوست گرامی اگر بیشتر جستجو کنی به نتیجه میرسی . حالا بنده یک نمونه برات گذاشتم مشکلت را حل میکنه . راه حل هم در قسمت دیزاین فرم تیبل 2 /قسمت ایونت موجود است . فقط تنها کاری که باید بکنی اینه کا بجای ستونهای من اسم ستونهای خودت را قرار بدی
ضمنا من هم قبلا همین مشکل را داشتم که از لطف دوستان برخوردار شدم
موفق باشی

amirali111
شنبه 09 آبان 1388, 16:35 عصر
دوست عزیز باسلام،
قسمت اول سوال دوستمان که فرموده بودند در فیلد اتو نامبر وقتی یک رکورد پاک می شود طور برنامه ریزی شود که شماره آن برای ثبت رکورد بعدی حفظ شود چه پاسخی داشت؟
ضمن اینکه در فایل ضمیمه شما اصلا از اتونامبر استفاده نشده است!
لطفا دوستان راهنمائی بفرمایند وقتی از اتونامبر استفاده شده است و رکوردی پاک می شود یا در حین ثبت آن از ذخیره آن صرف نظر میشود چگونه می توان شماره ای که اکسس بطور خودکار می اندازد ، استفاده شود و پس از پاک کردن به شماره بعدی نپرد؟
لطفا اگر جواب درستی به این سوال داده شده است ، مسیر درست بدهید وگرنه آنطور که دوستان میفرمایند "بگرد پیدا میکنی" ما که کلی گشتیم جوابی نیافتیم...

amirzazadeh
یک شنبه 10 آبان 1388, 08:40 صبح
دوست عزیز باسلام،
قسمت اول سوال دوستمان که فرموده بودند در فیلد اتو نامبر وقتی یک رکورد پاک می شود طور برنامه ریزی شود که شماره آن برای ثبت رکورد بعدی حفظ شود چه پاسخی داشت؟
ضمن اینکه در فایل ضمیمه شما اصلا از اتونامبر استفاده نشده است!
لطفا دوستان راهنمائی بفرمایند وقتی از اتونامبر استفاده شده است و رکوردی پاک می شود یا در حین ثبت آن از ذخیره آن صرف نظر میشود چگونه می توان شماره ای که اکسس بطور خودکار می اندازد ، استفاده شود و پس از پاک کردن به شماره بعدی نپرد؟
لطفا اگر جواب درستی به این سوال داده شده است ، مسیر درست بدهید وگرنه آنطور که دوستان میفرمایند "بگرد پیدا میکنی" ما که کلی گشتیم جوابی نیافتیم...
دوست من سلام
اصولا فيلدهاي Auto Number طوري طراحي شده تا حالت uniqe بودن خودشون رو حفظ كنند ولي اگر شما اصرار به استفاده از اونها به ترتيب حتي بعد از حذف يك يا چند ركورد دارين ميتونين از اين نمونه كمك بگيرين.ابتدا در جدول ضميمه ترتيب شماره ها رو ببينيد(1و3و5) و بعد با اجراي كوئري 1 و سپس 2 مجددا جدول رو باز كنيد.
.................................
موفق باشيد

mreza1983
پنج شنبه 21 آبان 1388, 09:37 صبح
دوست من سلام
اصولا فيلدهاي Auto Number طوري طراحي شده تا حالت uniqe بودن خودشون رو حفظ كنند ولي اگر شما اصرار به استفاده از اونها به ترتيب حتي بعد از حذف يك يا چند ركورد دارين ميتونين از اين نمونه كمك بگيرين.ابتدا در جدول ضميمه ترتيب شماره ها رو ببينيد(1و3و5) و بعد با اجراي كوئري 1 و سپس 2 مجددا جدول رو باز كنيد.
.................................
موفق باشيد

با سلام خدمت دوست عزيز و تشكر
اين نمونه اي كه گذاشتين واسه زماني خوبه كه توي برنامه ميخواي اسناد به ترتيب شماره منظم بشن يعني شما بعد از آخرين شماره به تاريخ قبل سندي رو صادر كردي حالا ميخواي مرتب بشن و سرجاشون قراربگيرن
اما اگه ممكنه دراين مورد راهنمايي كنين كه اگر چنانچه ما بخواهيم در ابتداي امر سندي بزنيم و اونو حذف كرديم چطوري مجددا اين سند رو با همون شماره قبلي داشته باشيم.

amirzazadeh
پنج شنبه 21 آبان 1388, 11:57 صبح
با سلام خدمت دوست عزيز و تشكر
اين نمونه اي كه گذاشتين واسه زماني خوبه كه توي برنامه ميخواي اسناد به ترتيب شماره منظم بشن يعني شما بعد از آخرين شماره به تاريخ قبل سندي رو صادر كردي حالا ميخواي مرتب بشن و سرجاشون قراربگيرن
اما اگه ممكنه دراين مورد راهنمايي كنين كه اگر چنانچه ما بخواهيم در ابتداي امر سندي بزنيم و اونو حذف كرديم چطوري مجددا اين سند رو با همون شماره قبلي داشته باشيم.
دوست عزيز سلام
روش ارائه شده تنها زماني كاربرد داره كه شما بلافاصله بعد از حذف يك شماره (به عبارت بهتر آخرين شماره موجود در فيلد autonumber)، اونرو اجرا كنين تا شماره حذف شده مجددا در دسترس شما باشه.
.........................
موفق باشيد

amirali111
یک شنبه 24 آبان 1388, 16:10 عصر
دوست عزيز سلام
روش ارائه شده تنها زماني كاربرد داره كه شما بلافاصله بعد از حذف يك شماره (به عبارت بهتر آخرين شماره موجود در فيلد autonumber)، اونرو اجرا كنين تا شماره حذف شده مجددا در دسترس شما باشه.
.........................
موفق باشيد
با تشکر از amirzadeh عزیز.
زمانی که ما در فرمی که یک فیلد اتو نامبر داریم ، و ابتدا شروع به ورود اطلاعات در فیلدهای دیگر میکنیم (طبیعتا" اتو نامبر یک شماره می اندازد) و در آخر یا اواسط ورود اطلاعات در فرممان منصرف می شویم و با توجه به اینکه قبلا در ایونت beforeupdate از کد زیر جهت پرسش ذخیره یا عدم ذخیره استفاده کرده ایم، اگر خیر را بزنیم اطلاعات undo میشود ولی یک شماره این وسط خالی مصرف می شود.(زمان ورود داده بعدی یک شماره جلوتر می اندازد)
حال با توجه به اینکه ما نمی خواهیم کل شماره های اطلاعات ما تغییر کند (مثل شماره نامه های ثبت شده که ثابت می ماند ) به نظر در هر بار open شدن برنامه باید دوکویری ارائه شده از طرف آقای amirzadeh اجرا شود تا شماره ای جا نیافتد؟

Private Sub Form_BeforeUpdate(Cancel As Integer)
On Error GoTo Err_BeforeUpdate
' در صورتيکه Dirty فرمTrue خصوصيت باشه
If Me.Dirty Then
' اطلاعات از کاربر ميکنه Save برنامه اقدام به پرسش برا?
If MsgBox(" آيا قصد ذخيره اطلاعات وارده را داريد؟ ", vbMsgBoxRight + vbYesNo + _
vbQuestion, "توجه") = vbNo Then
Me.Undo
End If
End If
Exit_BeforeUpdate:
Exit Sub
Err_BeforeUpdate:
MsgBox Err.Number & " " & Err.Description
Resume Exit_BeforeUpdate
End Sub

MajidSarabi
سه شنبه 03 آذر 1388, 22:05 عصر
سلام عليكم؛
به نظر من لازم نيست اينهمه زحمت بكشيم. هنر يك برنامه نويس اين است كه سفارش دهنده را با خودش همراه كند. امروز بسياري سيستمهاي قوي با تعداد زيادي داده طراحي مي شوند كه اعداد ويژة داده ها به ترتيب نيست و شماره پروندة رندوم به آنها اختصاص مي دهند. با يك فيلد اتورن رندوم و مقداري صحبت با سفارش دهنده ، مشكل حل مي شود.!!
بنده در اداره اي كار مي كنم كه حدود 4 سال پيش سيستم جامع كشوري آن راه اندازي شده و روزانه صدها پيام از شهرستانهاي مختلف در ان ثبت مي شود و شمارة پيامها رندوم است و تا حالا هيچ مشكلي نداشته ايم.