PDA

View Full Version : سوال: راهنمایی برای نوشتن برنامه اتوماسیون



soft-c
جمعه 10 آبان 1392, 07:00 صبح
سلام
من می خوام یک برنامه اتوماسیون بنویسم .
لطفا تو این زمینه راهنمایی کنید .
سوال اول :
وقتی دبیرخانه نامه را می گیره بهترین راه اینه که از نامه یک عکس بگیره و در دیتابیس ذخیره بکنه و یا اینکه همون نامه را ذخیره کنه؟
بهترین روش ذخیره کردن نامه چیه ؟(حالا یا خود نامه و یا عکس نامه).
بهتره که خود نامه و یا عکس اون را ذخیره کنم یا آدرس و اسم اون را .
تشکر

gholami146
جمعه 10 آبان 1392, 12:27 عصر
شما باید عکس اون نامه رو با حجم مشخص در داخل بانک بهمراه پیوست هاش ذخیره کنید
از Blob ها استفاده کنید

SayeyeZohor
جمعه 10 آبان 1392, 13:24 عصر
به نطر كار جالبي نيست چون مي دوني چندتا نامه در روز مياد دبيرخانه؟

اگه از برنامه نويسان ش خدمات ماشيني تامين اچتماعي هستند لطفا پيام خصوصي بدند (برنامه نويسان سيستم دبيرخانه تامين اجتماعي)

یوسف زالی
جمعه 10 آبان 1392, 13:35 عصر
سلام.
کاملا بستگی داره به حجم داده هاتون.
این کار با بررسی شیوه های ذخیره فایل در دی بی هیچ تفاوتی نداره.
در این باره هم بحث شده جستجو کنید.

soft-c
جمعه 10 آبان 1392, 15:04 عصر
شما باید عکس اون نامه رو با حجم مشخص در داخل بانک بهمراه پیوست هاش ذخیره کنید
از Blob ها استفاده کنید
اینطوری که اگر تعداد نامه ها زیاد بشه دیتا بیس سنگین میشه و ...

به نطر كار جالبي نيست چون مي دوني چندتا نامه در روز مياد دبيرخانه؟

اگه از برنامه نويسان ش خدمات ماشيني تامين اچتماعي هستند لطفا پيام خصوصي بدند (برنامه نويسان سيستم دبيرخانه تامين اجتماعي)
نه . برای یک کار اداری هست که می خوام انجام بدم

سلام.
کاملا بستگی داره به حجم داده هاتون.
این کار با بررسی شیوه های ذخیره فایل در دی بی هیچ تفاوتی نداره.
در این باره هم بحث شده جستجو کنید.
خوب معمولا برای این جور کارها روی حجم بالای داده حساب می کنند .
با چه موضوعی جستجو کنم .نحوه ذخیره فایل ؟ یا ...

gholami146
جمعه 10 آبان 1392, 18:01 عصر
من هنوز میگم استفاده از بانک اطلاعاتی بسیار مناسب هست .
چون در عرایض قبلیم گفتم اندازه ها باید کنترل بشه شما میتونید با استفاده از سیستم های فشرده سازی اظلاعات رو فشرده کنید و انها رو به بانک بفرستید و برای اینکه بار سرور کم بشه عمل کد و دی کد رو به به خود کلاینت ها واگذار کنید که هم از لحاظ امنیت و هم از لحاظ حجم بسیار مفیده

یوسف زالی
جمعه 10 آبان 1392, 20:54 عصر
اگر دی بی شما SQL هست بگردید دنبال File Stream در SQL

firststep
جمعه 10 آبان 1392, 21:14 عصر
سلام
nikamooz.com یک پادکستی در این زمینه ساخته..... چیزه خوبی

با تشکر ازشون

بهتر بود در قسمت تجزیه و تحلیل دیتابیس این سوالتون رو مطرح می کردید

soft-c
جمعه 29 فروردین 1393, 21:05 عصر
سلام.
کاملا بستگی داره به حجم داده هاتون.
این کار با بررسی شیوه های ذخیره فایل در دی بی هیچ تفاوتی نداره.
در این باره هم بحث شده جستجو کنید.
file stream را سمت دلفی انجام بدیم بهتره یا سمت sql

مرد مباح
جمعه 29 فروردین 1393, 23:14 عصر
شما باید قابلیت اتصال فایل ایجاد کنی. فرقی نمیکنه که عکس باشه یا DOC. چون نامه خروجی و ورودی ممکنه متفاوت عمل بشه.

با filestream کاملا موافق هستم.
اینجوری محدودیتی براتون ایجاد نمیشه. سرعت دیتا بیس هم بالاتر میره.
نظرات متفاوته در زمینه کد داخل دلفی ویا خود SQL.
من از جهاتی داخل دلفی رو ترجیح میدم. با اینکه خیلی سختتر میشه کارات و کدات. خصوصا اوایل کار. چون یک سری رویه برای تغییر نام و مسیر یابی و ایجاد لینک با دیتابیس نیاز داری.
مزایای این روش سازگاری با تمام ورژن های SQL است. یعنی اگر در سازمانی SQL 2005 داشته باشن file Stream جواب نمیده. ولی با این روش شما جواب میگیری. و مزیت بعدی فایلهات توسط SQL قفل نمیشن و بارگذاری بعدی و رویه نجات فایلها خیلی راحتتر میشه.
البته بگم. باید یک رویه درست هم برای بک آپ گیری بسازی. چون دیگه SQL این کارو برات نمیکنه.

نهایتا انتخاب با خودته. بسته به شرایط کاری و سازمانی و هدف نهاییت باید تصمیم بگیری.

پانویس : رویه = Procedure ویا Function

عقاب سیاه
سه شنبه 02 اردیبهشت 1393, 22:19 عصر
ما برای یه بیمارستان این کا را کردیم و نتیجه اصلا خوب نبود
کم کم سرعت دیتابیس میاد پایین چون سنگین میشه! بک آپ گیری مکافات میشه و.....

به نظر من بهترین کار استفاده از FTP هست

soft-c
چهارشنبه 03 اردیبهشت 1393, 08:53 صبح
دوستانی که در این زمینه کار کرده اند ، کدام روش را توصیه می کنند ؟
file stream یا ftp

firststep
چهارشنبه 03 اردیبهشت 1393, 16:25 عصر
سلام خوده sql امکان جدیدی قرار داده برای این مورد
اسمش رو درست یادم نمی یاد ولیکن اطلاعات حجیم را توی یک فایل جدا گانه ضخیره می کنه اگر اشتباه نکنم

عقاب سیاه
چهارشنبه 03 اردیبهشت 1393, 16:31 عصر
منم شنیدم که خوده SQL جدیدا این کارا میکنه
و یه نکته ای که راجبه FTP یادم رفت اونم اینکه کاملا از Stream پشتیبانی میکنه یعنی میتونید استریم بفرستین و استریم بگیرین

یوسف زالی
چهارشنبه 03 اردیبهشت 1393, 16:34 عصر
سلام خوده sql امکان جدیدی قرار داده برای این مورد

File Streaming

مرد مباح
چهارشنبه 03 اردیبهشت 1393, 23:35 عصر
از همون اول file stream توی گزینه ها بوده و صحبت شده.


نکته ای که راجبه FTP یادم رفت اونم اینکه کاملا از Stream پشتیبانی میکنه یعنی میتونید استریم بفرستین و استریم بگیرین

میشه کمی بیشتر در مورد این روش خودتون توضیح بدین تا یاد بگیریم؟
1. منظور از FTP چه روشی است؟
2. فایلها داخل دیتابیس میرن یا جدا هستن؟
3. طریقه بازخوانی اطلاعات در برنامه چگونه است؟

عقاب سیاه
پنج شنبه 04 اردیبهشت 1393, 10:52 صبح
فکر کنم این
File Streaming که اساتید گفتن مناسب تر باشه ولی اگه امکان استفاده از اون نسخه sql server را ندارید
1- یک پروتکل تبادل اطلاعات هست و کامپوننت هایه کار باهاش داخل خود دلفی وجود داره
2- نه خیر داخل سرور به صورت فایل ذخیره میشن اما مدیریت کاملش داخل برنامه وجود دارد پس فقط باید امنیت سرور را برقرار کنید و مثلا از CRC32 برای اطمینان بیشتر صحت فایل ها استفاده کنید
3- هم به صورت فایل می تونید اطلاعات را بفرستین و بخونین و هم به صورت استریم

soft-c
جمعه 05 اردیبهشت 1393, 19:28 عصر
ما برای یه بیمارستان این کا را کردیم و نتیجه اصلا خوب نبود
کم کم سرعت دیتابیس میاد پایین چون سنگین میشه! بک آپ گیری مکافات میشه و.....

به نظر من بهترین کار استفاده از FTP هست

آیا د ر اون پروژه شما روش کار را به ftp تغییر دادید؟ آیا از اون روش جواب گرفتید؟

عقاب سیاه
جمعه 05 اردیبهشت 1393, 21:46 عصر
آیا د ر اون پروژه شما روش کار را به ftp تغییر دادید؟ آیا از اون روش جواب گرفتید؟
امکان تغییر نسخه دیتابیس وجود نداشت که کلا
برای همین بله
FTP هم از نظر امنیت هم سرعت و .... بسیار عالی هست

soft-c
چهارشنبه 14 خرداد 1393, 23:54 عصر
فکر کنم این
File Streaming که اساتید گفتن مناسب تر باشه ولی اگه امکان استفاده از اون نسخه sql server را ندارید
1- یک پروتکل تبادل اطلاعات هست و کامپوننت هایه کار باهاش داخل خود دلفی وجود داره
2- نه خیر داخل سرور به صورت فایل ذخیره میشن اما مدیریت کاملش داخل برنامه وجود دارد پس فقط باید امنیت سرور را برقرار کنید و مثلا از CRC32 برای اطمینان بیشتر صحت فایل ها استفاده کنید
3- هم به صورت فایل می تونید اطلاعات را بفرستین و بخونین و هم به صورت استریم

با این اوصاف :
1- به نظر شما از file stream استفاده کنیم یا همون ftp
2- بهتره از file stream در دلفی استفاده کنیم یا در sql
3- با این اوصاف اگر از ftp استفاده کنیم نامه ها را در یک فایل ذخیره می کنیم نه در دیتابیس ؟ آیا این روش بهتره ؟در دلفی چه طوری نامه ها را فراخوانی کنیم ؟(یعنی وقتی کسی می خواهد یک نامه را بخواند چه طوری نامه را بیاوریم )

بهتر بود در قسمت تجزیه و تحلیل دیتابیس این سوالتون رو مطرح می کردید
تا حدودی با حرف شما موافقم . ولی منظور من از ایجاد این تاپیک فقط بحث دیتابیس نیست . فعلا بحث تا اینجا پیش رفته . بیشتر بحث من سر استفاده از تکنولوژیهای موجود و قابل پشتیبانی در دلفی برای برنامه نویسی اتوماسیون هست تا بحث دیتابیس .

عقاب سیاه
پنج شنبه 15 خرداد 1393, 14:18 عصر
[QUOTE=soft-c;2036324]با این اوصاف :
1- به نظر شما از file stream استفاده کنیم یا همون ftp
2- بهتره از file stream در دلفی استفاده کنیم یا در sql
3- با این اوصاف اگر از ftp استفاده کنیم نامه ها را در یک فایل ذخیره می کنیم نه در دیتابیس ؟ آیا این روش بهتره ؟در دلفی چه طوری نامه ها را فراخوانی کنیم ؟(یعنی وقتی کسی می خواهد یک نامه را بخواند چه طوری نامه را بیاوریم )

به نظر من (که مسلما ممکنه اشتباه باشه)
1- ّFTP هم از File Stream استفاده میکنه
2- من ترجیح می دم داخل خود دلفی مثل همین FTP
3- درسته! برای اتوماسین به نظر من بهتره چون دیتابیس سنگین و حجیم نمیشه و کنترل کاملی هم روی فایل ها هست
میتونیم برای مثال یه تیبیل داشته باشیم که مشخصات اون فایل مثل یک کلید و CRC32 و فرمت و ... داخلش باشه حالا توی سرور فایل ها با نام مقدار کلید رکورد مربوط به خودشون ساخته بشن
برای فراخوانی هم اگر کاربر دسترسی های لازم را داشت کافیه به شی FTP بگین فایل با اسم فلان را برام به صورت استریم/فایل برگردون دستورش کلا یک خط هست

soft-c
جمعه 16 خرداد 1393, 14:49 عصر
تشکر
با پرس و جویی که کردم دوستان هم همین روش ftp را توصیه می کردند . چون می گفتند با روش stream یک مقدار سرعت پایین می اید .
حالا می خواهم یک قدم جلوتر بروم . لطفا همراهی کنید :
من می خوام هر وقت که کسی نامه ایی را می فرستد ، مثلا یک کارمند به مدیرش و ... یک نسخه از نامه در سیستم کاربر فرستنده نامه ذخیره بشه و یک نسخه در سرور .
با پرس و جویی که کردم دوستان هم همین روش ftp را توصیه می کردند . چون می گفتند با روش stream یک مقدار سرعت پایین می اید .
حالا می خواهم یک قدم جلوتر بروم . لطفا همراهی کنید :
1-من می خوام هر وقت که کسی نامه ایی را می فرستد ، مثلا یک کارمند به مدیرش و ... یک نسخه از نامه در سیستم کاربر فرستنده نامه ذخیره بشه و یک نسخه در سرور . آیا این روش اصولی هست ؟
2- بحث دوم روش فراخوانی مثلا برنامه word نوشتن نامه در اون ، ذخیره کردن اون هست ؟ فراخوانی word را از طریق دستورات shell بلدم ولی بحثم سر ذخیره کردن اون هست . چه طوری می تونم این کار را انجام بدم که با بستن word و اتمام نامه نگاری نامه ذخیره بشه و اطلاعات تون نگهداری بشه .
تشکر

عقاب سیاه
یک شنبه 18 خرداد 1393, 14:18 عصر
خواهش میکنم
1- فکر نمیکنم اصولی باشه! دلیل شما را برای این کار نمی دونم ولی یک نسخه از نامه در سرور ذخیره میشه و مشخصات اون نامه هم در دیتابیس هست هر کسی که دسترسی لازم را داشته باشه (فرستنده و گیرنده برای مثال) میتونه اون نامه را باز کنه.
2- میتونید از OleContainer دلفی استفاده کنید داخل خود برنامه باز میشن کنترل نسبی روش دارین و بجای فایل یک استریم به شما میده(از استریم هم میخونه) البته بگم که این استریم را مستقیم نمی تونید سیو کنید و تو ورد باز کنید فقط ورد OleContainer باز میکنه اما قابل تبدیل هست
تمامی این کارا قابل انجاما حتی میتونید Cntl+s را هم شبیه سازی کنید که فایل به سرور ارسال بشه ...

soft-c
دوشنبه 19 خرداد 1393, 07:44 صبح
خواهش میکنم
1- فکر نمیکنم اصولی باشه! دلیل شما را برای این کار نمی دونم ولی یک نسخه از نامه در سرور ذخیره میشه و مشخصات اون نامه هم در دیتابیس هست هر کسی که دسترسی لازم را داشته باشه (فرستنده و گیرنده برای مثال) میتونه اون نامه را باز کنه.

علتش اینه که اولا می خواهیم که هر نفر که می خواهد نامه های خودش را ببینه ، نخواهد به سرور رجوع کند.
دومین علتش هم داشتن یک نسخه پشتیبان از هر نامه هست .

عقاب سیاه
دوشنبه 19 خرداد 1393, 09:24 صبح
خوب پس به تحلیل های خودتون مربوطه و همین جوری نمیشه دربارش نظر داد...

soft-c
جمعه 28 شهریور 1393, 18:31 عصر
دوستان یک سوال :
خوب من با استفاده از indy ftp فایل را روی سرور ذخیره کردم (البته یک نسخه از اون را هم روی همون کلاینت ذخیره می کنم )
حالا می خوام برای ویرایش فایل ورد ، نامه را باز کنم . به نظرتون فایل را از روی سرور باز بکنه بهتره یا از روی همون کلاینت ؟
اگر بخوام از روی سرور بخونم از چه ترفندی استفاده کنم : مثلا یک فولدر داشته باشم و ابتدا فایل را در اون دانلود کنم و بعد فایل را باز کنم یا ....