View Full Version : امکان تکرار اطلاعات در ستون PrimaryKey شده
mosaArabi
دوشنبه 09 دی 1387, 15:50 عصر
باسلام
دوستان و اساتید گرامی در خصوص تکرار مواردی که بصورت PrimaryKey میباشند بنده در قسمت General تیبل در گزینه Indexed که به صورت Yes (No Duplicates) میخوام قسمت OK Duplicatesفعال بشه تا بتونم از خاصیت تکرار استفاده کنم .
البته راه های دیگه را بلدم ولی بخاطر اینکه در برنامه اطلاعات ذخیره شده و با کوچکترین تغییر باید کواری و فرم و ریپورت ها را هم تغییر بدم بخاطر همین بیان کردم تا شاید از دوستان کسی نظری داشته باشه (البته شاید سئوال پیش باید که چرا از اول به این فکر نبودم ؟ جواب : قرار نبود که کد برنامه تولید در ماههای دیگه تکرار بشه اما حالا تغییر پیدا کرده است )
جهت تسهیل فایل ضمیمه ارائه شده است
با تشکر
nabeel
دوشنبه 09 دی 1387, 21:47 عصر
جناب mosaArabi
در حالت Primary Key امکان Index گذاری مستقل وجود نداره .
کد برنامه تکراری جای سئوال داره ! ولی با این اوصاف از کلید ترکیبی : کد برنامه + تاریخ شروع + تاریخ پایان استفاده کنید .
در صورتی که روش فوق جوابگو نیست , توصیه میکنم کلاً بی خیال نوشتن برنامه تولید ( و یا احیاناً کنترل تولید بشید )
توضیح : در صورتی که شما احتمالاً اقدام به صدور برنامه تولید برای چند واحد تولیدی مستقل از هم میکنید در اون حالت کد واحد تولیدی هم باید به سوییچهای فوق اضافه بشه البته در اون حالت فکر میکنم دو تا پارامتر تاریخی مورد نیاز نباشه که این بستگی به نوع کار شما داره .
البته توصیه هایی که کردم فقط با توجه به ساختار جدول طراحی شده از سمت شماست .
با توجه به اینکه حدس میزنم شما در مشاوره با کسی در حال طراحی سیستم کنترل تولید هستید ( معمولاً مشاوری از سوی واحد تولید ) , توصیه میکنم مشاورتون رو عوض کنید . به نظر میاد منابع اطلاعاتی مورد نیاز جهت صدور یه برنامه به درستی دیده نشدن .
شرط الزامی نوشتن یک برنامه کامپیوتری درست داشتن اطلاعاتی کامل از پروسه عملیاتی موجود هستش چرا که تنها کاری که یه برنامه نویس یا برنامه ساز انجام میده اتوماسیون یک پروسه دستی موجود هستش و بس .
توصیه میکنم روی تحلیل سیستم موجود اول فکر بشه بعد وارد پروسه طراحی نرم افزار بشید .
موفق باشید
mosaArabi
سه شنبه 10 دی 1387, 14:23 عصر
جناب آقاي nabeel (http://barnamenevis.org/forum/member.php?u=85795)
با سلام خدمت شما دوست گرامي
برنامه ذكر شده نوشته شده است و الان داره كار مكنه فقط مورد اشاره كه من فقط تيبل مورد نظر را ضميمه كردم (حجم بالاي برنامه)تا ببينم آيا راهي وجود دارد يا نه .البته من راه ميانبر را پيدا كردم كه بد نيست عنوان كنم تا شايد كسي به اين مورد برخورد كرد استفاده كند (اختياري). من در تيبل مورد نظر ستون ماه را نيز اضافه كردم و ستون ماه +ستون كد برنامه (هردو)را Primary Key كردم. با اين كار در هر ماه فقط يك كد برنامه صادر ميشود و در ماههاي ديگر نيز امكان يكبار تكرار بوجود مي آيد.اين تغيير را ايجاد كردم و در ساختار ساير قسمتها فقط فرم مورد نظر تغيير كوچكي پيدا كرد.
با تشكر از راهنمايي شما دوست محترم
nabeel
سه شنبه 10 دی 1387, 18:31 عصر
mosaArabi عزیز
چندین ساله که روی سیستمهای کنترل تولید و ... کار میکنم
استفاده از ستون کد ماه به اضافه شماره برنامه در صورتی که شما برای هر سال یک فایل مجزا داشته باشید جوابگو هست ولی به نظر شما داشتن یک فایل برای هر سال توجیه داره . اگه داره خوب حق با شماست .
تصویر زیر نمایی از بخش Relationships یک برنامه کنترل تولیده که در یه واحد تولیدی مسقر شده .
با توجه به تغییراتی که در سیستم اجرایی اونها به وجود اومده ( پس از چند سال ) هنوز سر اعمال یک سری تغییرات مشکل دارم .
فایل شما با توجه به جایگاهی که این جدول در داخل یک برنامه کنترل تولید داره به قطع با مشکلاتی مواجه میشه که اعمال تغییرات آتی رو توی اون اگه غیر ممکن نکنه , انجام اینکار رو خیلی سخت میکنه .
اجرای یک سیستم کنترل تولید کارا نیازمند یه مهندسی فرآیند دقیقه .
با تشکر و سپاس از توجه شما
mosaArabi
چهارشنبه 11 دی 1387, 13:06 عصر
دوست محترم جنابnabeel (http://barnamenevis.org/forum/member.php?u=85795)
البته من براي جلوگيري از تكرار در سالهاي بعد شروع شماره برنامه توليد را با همان سال آغز مي كنيم مثلا 87120-86110و ...
البته اينها همه مسكن هستند و راه اصلي نيستند . چنانچه جنابعالي نمونه كوچك از ايده خود را براي بنده ارائه نماييد ممنون ميشم
nabeel
چهارشنبه 11 دی 1387, 18:07 عصر
mosaArabi عزیز
متاسفانه امکان ارائه نمونه کوچیکی در این رابطه وجود نداره . ( چرا که کنترل تولید عملاً پروسه کوچیکی نیست )
از راه حلهای شما به نظر میاد ( و به گفته خودتون مسکن ) , اگه از ارتباطات در جداول خودتون استفاده کردید و گزینه Enforce referential Integrity فعال بشه که مشکل حله .
مشکل عنوان شده از سمت شما با انتخاب یه فرمت استاندارد و جامع در خصوص کد برنامه قابل حله .
به طور مثال کدی که شماره سریال برنامه + کد واحد تولیدی مستقل + سال و شماره ماه رو در بر بگیره
مثال :
کد 01A8712 برنامه اول واحد تولیدی A در سال 87 و ماه 12
09B8605 برنامه نهم واحد تولیدی B در سال 86 و ماه 5
توضیح : برنامه های من در این خصوص مشکلی ندارن . اگه ساختار برنامه شما به گونه ای هستش که تغییر یک کد تا این حد مشکل ایجاد میکنه در صورت امکان فایل خودتون رو بدون اطلاعات ( حداکثر شامل جداول ) روی سایت قرار بدید . چرا که ایده گرفتن از فایلهای من , مطمئناً نیاز به تغییر طراحی کلی در فایلهای شما داره . کار کردن بر روی فایل شما زمان کمتری میبره .
گو اینکه یک برنامه کنترل تولید با توجه به نوع عملکردها و پروسه های تولید متفاوته و به تبع اون ساختارهای متفاوتی رو طلب میکنن .
در مجموع همکاری من با خودتون رو تنها در حد پیشنهاد بدونید و بس . نه الزامی و نه هیچگونه اجباری در کار نیست . تنها یک تبادل فکر بود و بس .
موفق باشید .
توضیح : گزینه سفارش طراحی یه برنامه کنترل تولید هم میتونه یکی از گزینه هاتون باشه .
mosaArabi
پنج شنبه 12 دی 1387, 08:57 صبح
با تشکر از لطف جنابعالی بابت صرف زمان برای بنده
با آرزوی موفقیت برای شما
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.