View Full Version : فرمول نویسی در view
minaalamshahi
یک شنبه 30 مرداد 1390, 21:47 عصر
با سلام
من احتیاج دارم که بر روی فرمم قسمتی رو طراحی کنم تا چیزی شبیه ساختن view را در فرمم پیاده کنم
table ها و فیلد های مورد نیاز را اضافه کنم
وبین table ها join رو تشخیص بدم
و نهایتا بتونم روی view ایجاد شده بر روی بعضی از فیلد ها فرمول نویسی داشته باشم
مثلا این فیلد بر این فیلد تقسیم بشه یا هر عملگر دیگه ای یا بتونم دو تا فیلد رو الحاق کنم
.و نهایتا از اون فیلد محاسبه شده رو در غالب یک فیلد به فیلد های خرو جی اضافه کنم
ممنونمیشم در مورد فرمول نویسی در این زمینه منو راهنمایی کنید
یوسف زالی
دوشنبه 31 مرداد 1390, 02:03 صبح
سلام. من پیارسال کار مشابهی انجام دادم.
برای تشخیص رابطه بین دو جدول میشه از
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
و
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
استفاده کرد.
شما قدم به قدم پیش برید و سوالاتتون رو مطرح کنید تا تک تک اونا رو حل کنیم.
minaalamshahi
چهارشنبه 23 شهریور 1390, 15:44 عصر
این دو رو تست زدم قدم بعدی چیه؟
حمیدرضاصادقیان
شنبه 26 شهریور 1390, 09:49 صبح
سلام.
شما فکر کنم میخواهید یک چیزی مثل فرمول نویسی در حقوق دستمزد پیاده سازی کنید.
برای اینکار روشهای گوناگونی هست.
یک راه این هست که مثلا کاربر بیاد یک سری فیلد برای خودش به زبان فارسی تعریف کنه و در جدول شما اون فیلد یک Id داره و یک نام.
حالا میاد با ترکیب این فیلدها برای خودش یک فیلد محاسباتی ایجاد میکنه که شما در جدول دیگری باید براساس اون ID هایی که کاربر ایجاد میکنه یک فرمول تهیه کنید.
بعد در نهایت از اون استفاده کنید.
اگر میخواهید کاربر جداول رو ببینه اینجوری باید مثل خود Management Studio لیست جداول رو به کاربر نمایش بدید وبا انتخاب هر کدوم شما خودتون کد مورد نظر رو تولید کنید.
و در نهایت کد مربوطه رو تولید کنید.
minaalamshahi
شنبه 26 شهریور 1390, 10:08 صبح
ممنونم اما قضیه به این راحتی نیست
من می خوام یه visual query designer بسازم
که بتونم رو بعضی از فیلد هاش فرمول نویسی داشته باشم
مثلا بتونم الحاق کنم یا اصلا آمار بگیرم
avg و count و....
حمیدرضاصادقیان
شنبه 26 شهریور 1390, 14:41 عصر
عرض کردم .
راه حل تقریبا همین چیزیست که عرض کردم. یا باید به کاربر اجازه بدید فیلد تعریف کنه و خودتون اون فیلدهارو براساس ID در جداول مختلف نگهداری کنید یا اینکه بهش دسترسی بدید لیست جداول رو ببینه و با انتخاب هرکدوم شما Query مربوطه رو ایجاد کنید.
minaalamshahi
شنبه 26 شهریور 1390, 16:34 عصر
http://www.codeproject.com/KB/database/QueryDesigner.aspx
این لینک تقریبا همون کاری رو می کنه که من می خوام البته در win app نوشته شده اما یه dll داره برای کار با oledb اما برای sql من dll مشابه پیدا نکردم کسی می تونه راهنمایی کنه
به نظر شما می شه کاری کرد که مستقل از این dll کار کنه؟
حمیدرضاصادقیان
یک شنبه 27 شهریور 1390, 07:52 صبح
خوب اینم دقیقا چیزی هست که من توضیح دادم.
عرض کردم باید لیست جداول رو در اختیار کاربر قرار بدید. این تبدیل به DLL کرده که بتونه جای دیگری استفاده کنه.
شما میتونید لیست جداولتون رو از Information_Schema بدست بیارید به کاربر نمایش بدید.و در زیر مجموعه اون اگر روی هرجدولی کلیک کرد لیست فیلدهاشو باز از همین Information_Schema.Columns بدست بیارید به کاربر نمایش بدید. وقتی کاربر فیلدی رو کلیک میکنه خودتون یک Alias برای جدول مورد نظر ایجاد میکنید و Select رو تشکیل میدید.
تقریبا باید همه کارهارو خودتون انجام بدید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.