آدرس دهی فایل برای نمایش از دیتابیس

assimi

Member
با سلام ، مطالب زیادی را امروز روی انجمن مطالعه کردم ... یه سی دی اتوران هست شامل ۲۰۰ تا فایل پی دی اف میشه... تمام صفحات طراحی شده ولی تو قسمت پی دی اف ها تصمیم گرفتم یه ادوبی ریدر پرتابل کنار برنامه بگذارم ... تمام فایل ها را به اسم وارد یه لیست باکس بکنم و بر حسب انتخاب کاربر فایل ها با دستور ران از روی سی دی اجرا بشن... ایده بهتری دارین؟
یه بخش جستجو میخوام بگذارم بر اساس اون پلاگین sqlite ، حالا میخوام بدونم زمانی که نتیجه نهایی جستجو را میگیرم مثلا طرف سرچ میکنه ایران ۴ تا فایل درباره ایران پیدا میشه به اسم های
1.pdf , 56.pdf , 123.pdf . 198.pdf حالا چطوری میتونم به برنامه بفهونم اون فایل پی دی اف را نشان بده
... برای تک تک رکوردها هم میتونم رو دیتابیس یه جدول آدرس کامل فایل پی دی اف را تعریف کنم... نظرتون چیه برای ساخت بخش جستجو؟
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
من ترجیح میدم که Adobe Reader رو بصورت سایلنت نصب کنم و یا از کاربر بخوام که خودش نصبش کنه

همچنین من ترجیح میدم برای آدرس دهی، برای هر موضوع، فقط نام فایل رو در یک فیلد وارد کنم، هنگامی که نیاز به اجرا بود، نام فایل رو از دیتابیس بخونم و به یک متغیر که حاوی مسیر پوشه ی فایل ها هست اضافه کنم تا مسیر کامل ایجاد بشه و بعد فایل رو درون فرم، توی شئ Browser و یا پلاگین نمایش بدم.

هروقت جستجو صورت بگیره هم شما تمام نتایج رو دریافت میکنید و در ساده ترین حالت، نتایج رو در یک لیست باکس نمایش میدید، حالا کاربر هرکدوم رو که انتخاب کرد، فایل مرتبط با اون نمایش داده بشه.
 

assimi

Member
یه نمونه از این که اسم فایل را به متغیر اضافه کنین در دستور ران یا براوسر میشه بدین ؟ و اینکه ازش بخوام نصب کنه یا نصب داشته باشه...! تو چه پلاگینی نمایش داده بشه؟ با تشکر
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
فرض کنید فایل ها در پوشه ای بنام PDF در کنار فایل اجرایی قرار دارن، و نام فایلی که از دیتابیس دریفت میکنید، در متغیری بنام $FileName ذخیره میشه:
کد:
Path$ = '<SrcDir>\PDF\\' + $FileName
Run("Path$","")
Browser("Browser","Path$")

برای نمایش در شئ Browser و یا پلاگین، باید برنامه ی Reader نصب باشه، پس باید چک کنید که اگر نصب نیست، یا برنامه فایل نصب رو اجرا کنه، و یا از کاربر تقاضا کنید که فایل موردنظر رو نصب کنه (برای چک کردن اینکه نصب هست یا نه، باید مسیرهای رجیستری رو چک کنید، البته فکر کنم پلاگینی هم برای این مورد درحال توسعه بود)

نام پلاگین PDF Viewer بود اگر اشتباه نکنم، تفاوتش با شئ Browser هم کنترل بیشتری هست که روی صفحه بهتون میده، همین
 

reza zareie

Active Member
اينطور كه از سوالتون معلومه شما بايد خيلي مبتدي باشي خوب تو ران قسمت پارامتر رو خالي گذاشته يعني " ":rose:
 

assimi

Member
نه منظورم استفادش تو اون متغیر رشته ای بود که یه دور دیگه کتاب را نگاه کردم فهمیدم ... چطوری میشه فایل های پی دی اف را embed کرد تو برنامه ؟
 

reza zareie

Active Member
از قسمت Project به Embedded Files برين وفايلهاي پي دي اف رو امبد كنين . ولي بخدا جواب همچين سوالايي را ميشه بايه سرچ ساده پيدا كرد
 

assimi

Member
mmb دیتابیس ها را با چه collation ای میشناسه ؟ که هم فارسی و هم انگلیسی درست نمایش داده بشه ؟؟
اگه بخش های فارسی دیتابیس تو sqlite browser دیده بشن قضیه اوکی هست ؟
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
در مورد SQLite فقط یک نکته وجود داره، اطلاعات (فارسی) رو باید با خود MMB یعنی از طریق پلاگین SQLite وارد دیتابیس کنید تا به درستی نمایش داده بشه، در غیراینصورت به درستی نمایش داده نمیشه.
البته در مورد داده های لاتین این مشکل وجود نداره.

یعنی نمیتونید از SQlite Browser برای وارد کردن داده های فارسی به دیتابیس استفاده کنید.
 

assimi

Member
از دیتابیس یکی از رکوردهای ستونها را میتونم بخونم ولی زمانی که میخوام اضافه اش کنم به خط مسیر هیچی برنمیگیردنه
کد:
***getting the selected item
sep$='#'
PluginSet("UO","sep$")
PluginRun("UO","LVGetSelItem")
PluginGet("UO","Get$")
***extracting the pdfnum from the uo selected item
For j=1 To 5
  getfield$[j]=GetArrayItem(Get$,'#',j)
Next j
***making the path to open the file
Message("","getfield$[5]")
pdfpath$ = '<SrcDir>\PDF\\' + getfield$[5]
LoadText("edbox","pdfpath$")

محتویات ستون پنجم مثلا : 21345 , 21346 ,21347 که تو پوشه پی دی اف سه تا فایل هست به این نام ها 21345.pdf , ...
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا