نمایش نتایج 1 تا 4 از 4

نام تاپیک: آموزش ویرایش یک فیلد از جدول دیگر بعد از درج یا ویرایش جدول ورود یا خروج

  1. #1

    آموزش ویرایش یک فیلد از جدول دیگر بعد از درج یا ویرایش جدول ورود یا خروج

    دوستان عزیز سلام و خسته نباشید

    من یک فایل اکسس ساده دارم برای کنترل ورودی و خروجی یک انبار کوچیک

    یک جدول که اطلاعات یوزر ها رو نگه میداره
    یک جدول که موجودی انبار رو نگه میداره
    یک جدول اطلاعات کالاهای وارد شده
    یک جدول اطلاعات کالاهای خارج شده

    میخوام جوری تنظیم کنم که بعد از ورود یا خروج کالا اتوماتیک موجودی اون کالا توی جدول موجودی انبار آپدیت بشه
    مثلا اگه کاربری 10 عدد خودکار از انبار دریافت کرد موجودی خودکار توی جدول موجودی 10 عدد کم بشه

    ممنون میشم راهنمایی کنید

  2. #2
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: آموزش ویرایش یک فیلد از جدول دیگر بعد از درج یا ویرایش جدول ورود یا خروج

    سلام و روز خوش

    البته این کار (محاسبه یک تابع aggregate مثل sum روی جدول detail و update جدول master) شدنی هست:
    PARAMETERS [@kalaid] LONG;
    UPDATE kalaha SET kalaha.tedad_kol =
    DSUM("tedad","voroodi","kalaid=" & [@kalaid])
    -
    DSUM("tedad","khorooji","kalaid=" & [@kalaid])
    WHERE kalaha.id=[@kalaid]

  3. #3
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: آموزش ویرایش یک فیلد از جدول دیگر بعد از درج یا ویرایش جدول ورود یا خروج

    ولی چند نکته هست که باید در نظر داشته باشین:
    1- اصولا نیازی به این کار نیست و همیشه به sum (یا هر نوع تابع aggregate دیگه) با یک کوئری ساده دسترسی داریم.
    2- اگر به هر دلیلی کد آپدیت جمع کل اجرا نشه، مقدار اون نادرست هست.
    در حالی که اگر در وقت نیاز کوئری جمع رو اجرا کنیم مطمئن هستیم مقدار درست رو به ما میده.
    3- کدنویسی و نگهداری برنامه پیچیده تر هست، چون در هر جا که یک عملیات insert/update/delete رو جدول detail انجام بشه باید حواسمون باشه که کد مناسب برای آپدیت جدول master رو اجرا کنیم.
    4- اگر عملیات روی جدول detail بصورت batch و با تعداد رکورد زیاد داشته باشیم (مثلا حذف 50 هزار رکورد بصورت یکجا) مشکلات جدی خواهیم داشت.
    5- اگر مانده یا جمع انباشته نداشته باشیم کد نویسی ساده تر و احتمال بروز مشکل پرفورمنس هم کمتر هست.
    در این صورت بجای محاسبه جمع روی همه رکوردها کافی هست که مقدار جمع کل بر اساس این که چه نوع عملیاتی در detail انجام شده آپدیت بشه.
    فرضا اگر یک رکورد با مقدار 5 به جدول detail اضافه شد کافی هست به جمع کل 5 رو اضافه کنیم و به همین قیاس برای delete و update
    6- معمولا برای خودکار کردن این نوع کارها بجای کدنویسی در فرم، فقط یکبار در خود جدول کدنویسی میکنیم (trigger در sql و datamacro در access).

  4. #4

    نقل قول: آموزش ویرایش یک فیلد از جدول دیگر بعد از درج یا ویرایش جدول ورود یا خروج

    سلام مجدد و تشکر بابت وقتی که گذاشتید

    عرض کنم که من این کار رو با استفاده از ویزارد ماکرو خود اکسس انجام دادم و برای اینزرت و آپدیت هر رکورد جدیدی از جداول ورودی و خروجی انبار - تعداد اون کالا رو از جدول موجودی کم و زیاد کردم - این هم تصویر ماکرو که ایجاد کردم

    Capture.PNG

تاپیک های مشابه

  1. ویدیوی آموزش مقدماتی برنامه نویسی اندروید
    نوشته شده توسط mk1992 در بخش Android Studio
    پاسخ: 1
    آخرین پست: دوشنبه 30 اسفند 1395, 19:16 عصر
  2. پاسخ: 0
    آخرین پست: یک شنبه 21 شهریور 1395, 20:07 عصر
  3. درخواست آموزش ساخت ویجت در اندروید استدیو
    نوشته شده توسط np.1400 در بخش Android Studio
    پاسخ: 2
    آخرین پست: یک شنبه 23 اسفند 1394, 10:22 صبح
  4. پاسخ: 2
    آخرین پست: پنج شنبه 22 آبان 1393, 17:34 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •