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

نام تاپیک: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

  1. #1
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    با سلام و آرزوی قبولی طاعات و عبادات دوستان گرامی
    در نمونه پیوست قصد دارم بتوانم با استفاده از کنترل وب بروزر به دیتابیس متصل و اطلاعات مورد نیاز را برای عملیات مورد نیاز فراخوانی کنیم
    علیرغم درست بودن ظاهر کدها اتفاقی نمی افتد از دوستان گرامی به ویژه استاد mazoolagh نگاهی به نمونه پیوست نموده و راهنمایی لازم را بفرمایند. در ضمن از کدهای اتصال به sql server هم استفاده کردم ولی نتیجه نگرفتم. برای اتصال به سرور هم از عبارت زیر استفاده کردم. به نظر می آید اشکالی که هست مربوط به ActiveXObject باشد که حداقل من نتوانستم آن را درک کنم

    کد HTML:
    var   strConn = "Data Source="SERVERSGM\SGMSQLSERVER2019";Initial Catalog="mydatabase";User ID="sa";Password="1348">;Provider=SQLOLEDB";
    فایل های ضمیمه فایل های ضمیمه

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام و روز خوش

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

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    1- برگ های وب بطور کلی دو دسته ان:
    • برگه هایی که باید توسط یک وب سرور (iis, apache, light speed, ...) پردازش بشن (asp, aspx, php, ...)

    وب سرور میتونه همون کامپیوتری باشه که مرورگر وب هم نصب هست که میشه لوکال (local) یا روی شبکه محلی باشه (اینترانت) یا روی اینترنت
    این برگه ها کدهای سمت سرور دارن که بسته به تکنولوژی به یک زبان برنامه نویسی (vb.net, php, C#‎‎‎‎‎.net, java, ...) نوشته شده - محتوای اون میتونه کد خالص باشه یا اینکه کد سمت سرور درون تگ های ویژه ای باشه که اون ها رو از المان های html جدا میکنه.
    وب سرور کدهای سمت سرور رو پردازش و نتیجه رو به برگه اضافه میکنه - هر چه که غیر این باشه دست نخورده میمونه.

    • برگه هایی که پردازش اون ها نیاز به سرور نداره و مستقیما توسط مرورگر قابل پردازش هست - برگه های html عادی از این دسته ان که این ها هم درون خودشون میتونن علاوه برالمان های html (که درون تگ های ویژه خودشون هستن) ، کدهای اجرایی (جاوا اسکریپت) ، کدهای مربوط به شکل دهی المان ها (style sheet) و meta tag داشته باشن (تگ هایی که اجرایی نیستن ولی اطلاعاتی در مورد برگه و محتوای اون و ... دارن)

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

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    2- ارتباط بین مرورگر و وب سرور بر پایه درخواست/پاسخ (request/response) هست یعنی مرورگر یک درخواست به وب سرور میفرسته و وب سرور بعد از پردازش درخواست، نتیجه رو به مرورگر ارسال میکنه و اینبار مرورگر نتیجه رو پردازش میکنه و نمایش میده.
    درخواست از وب سرور هم راه های متنوعی داره که یکی از اون ها در خود آدرس هست:
    https://barnamenevis.org/showthread.php?565449

    در اینجا 565449 کد تاپیکی هست که درخواست نمایش اون رو داریم. وب سرور بر مبنای کد تاپیک در دیتابیس (که در سمت سرور هست و ما به اون دسترسی نداریم) جستجو و نتایج خام رو استخراج میکنه و یک برگه html میسازه (منظور محتوای برگه است و نه پسوند فایل اون) و همراه با استایل شیت و کدهای جاوااسکریپت لازم به مرورگر برمیگردونه.
    حالا مرورگر این ها رو پردازش میکنه و نمایش میده.

    یک راه دیگه ارسال درخواست، پست کردن پارامترها هست که همین ارسال پست یک نمونه از این روش هست.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    3- بنا به دلایل واضح امنیتی، کدهای جاوااسکریپت هیچ دسترسی به منابع سیستمی که مرورگر روی اون اجرا میشه ندارن.
    بنابراین یک برگه وب نمیتونه به فایل های روی هارد، یا دیتابیس روی sql server ، یا پرینتر و اسکنر و دوربین و ... دسترسی داشته باشه.
    داستان آپلود فایل و ... جدای از این هست که گفته شد و خارج از بحث ما هست.

    4- کدهای جاوا اسکریپت فقط به المان های همون برگه وب متناظر دسترسی دارن.
    این دسترسی هم بر پایه document object model=dom هست و اگر قرار هست کد جاوااسکریپت بنویسین باید dom رو هم بلد باشین.
    البته کتابخانه های کمکی متنوعی برای گسترش و همینجور ساده کردن اینکار هست که اصطلاحا framework بهشون میگن، ولی اصل عدم دسترسی به منابع سیستم مرورگر خدشه ناپذیر هست.

    5- برخلاف javascript ، کدهای vbscript که فقط روی internet explorer قابل اجرا بودن، قابلیت دسترسی به فایل های سیستم داشتن که به همین خاطر کلا کنار گذاشته شد چون یک ضعف امنیتی خطرناک بود.

    6- اکتیوایکس ها محدودیت دسترسی رو ندارن ولی فقط ie قابل اجرا هستن.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    خب، با این مقدمات مشخص هست که چرا برنامه پست 1 نمیتونه و نباید بتونه کار کنه.

    حالا موضوع این هست که خواسته واقعی چیست تا راه مناسبی براش پیدا کرد.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    در مورد اکتیوایکس webbrowser:

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

    اگر کسی مایل هست روش کار رو بدونه تاپیک جداگانه ایجاد کنین.

  8. #8
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام
    ممنون از پاسختون که مثل همیشه مستدل و علمی بیان شده است
    راستش علت اصلی که به فکر این کار افتادم این بود که در برنامه ای که تحت شبکه داریم گاهی لازم میشه اطلاعاتی با کاربران رد و بدل کنیم که در برنامه پیش بینی نشده و به نظرم رسید اگر بتونیم از این طریق با دیتابیس اکسس یا حتی پایگاه داده SQL SERVER ارتباط برقرار کنیم بشه مشکل رو حل کرد مثلا فرمی رو در مرورگر فرم نمایش بدیم ( سورس کد فرم دینامیک بوده و از طریق مدیر برنامه قابل تغییره ) و کار مورد نظر رو به انجام برسونیم. پیش از ارسال این پست گوگل کردم و در برخی سایتها چنین نحوه ارتباطی رو پیشنهاد داده بودند اما عملا امکان پذیر نشد. امیدوارم ایده من یه راه عملی براش پیدا بشه

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام و روز خوش
    ساخت فرم های وبی، اعم از اینکه با دیتابیس سروکار داشته باشن و یا نه، فرآیند مشخص و سرراستی داره که بحثش خارج از بخش اکسس هست (انتخاب پلتفرم و تکنولوژی وب سرور و دیتابیس و محیط برنامه نویسی).
    ولی این که چرا باید با یک دیتابیس تحت شبکه محلی، همزمان هم از طریق وب فرم و هم از طریق اکسس (یا یک WINDOWS APP) کار بشه باید دلیل مشخصی داشته باشه.
    مورد دیگه این هست که چرا این وب فرم باید در اکسس (و نه در برنامه مرورگر) باز بشه - بخصوص که اکتیوایکس WEBBROWSER روی IE ساخته شده که دیگه یک تکنولوژی از رده خارج محسوب میشه.

    البته خواسته شدنی هست و از نظر اجرایی مشکلی نداره.

  10. #10
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام وقتتون به شادی و سلامت
    برنامه تحت اکسس مورد اجرا به یک برنامه اصلی کاربران تبدیل شده و cms با اقبال چندانی روبرو نیست. بسیاری از اطلاعیه ها هشدارها و خبرهای مهم در cms ثبت نمیشه و سامانه گردش کار اداری نیز شاید هر روز دیده نشه. اما برنامه ای که تحت اکسس کار می کنه به عنوان یک ابزار اصلی بعد از روشن شدن رایانه کاربران اجرا میشه. به همین جهت در نسخه امسال برنامه به جای تصویر بک گروند برنامه که تقریبا به جز منوها و .. حدود 70 در صد مانیتور را پوشش میده کنترل وب بروزر با کنترل سورس داینامیک که هر چند دقیقه به روز میشه قرار دادم که به وسیله اون هر نوع اطلاعات راهنمایی و ... میشه به سرعت در اختیار کارکنان قرار داد. خب به نظرم رسید این ابزار قشنگ رو میشه گاهی تبدیل به فرم های برای تبادل داده هم کرد. البته فرم های محاسباتی با اسکریپت های ساده را با اون درست کردم از استایل های زیبا برای دکمه ها و متن هم همین طور. برای تکمیل ایده ام ارتباط با سرور و یا دیتابیس اکسس هم به نظرم رسید که اگر انجام بدم به نظر خودم نور علی نور میشه. البته ترجیجم ارتباط با sql server هست که الان هم دیتای برنامه در اون ذخیره و واکشی اطلاعات از ازون انجام میشه
    تصور می کنم علت اصرارم به این کار رو توضیح داده باشم. البته من با شاگردی شما اساتید به این نتیجه رسیدم که در اکسس هر کاری شدنی است و مخصوصا این از توانایی هایی شماست که با راهنمایی های ارزنده تون راههای سخت رو هموار می کنید
    یادم هست تا چند ماه پیش برای ارسال پیامک مشکلات زیادی داشتم که راهنمایی شما ارسال پیامک از طریق وب سرور رو تکمیل کردم و الان به سادگی گاهی برای 5هزار نفر با یک کلیک از طریق برنامه پیام رو ارسال می کنم و حتی نتیجه هریک از پیام های ارسالی را دریافت و در بانک اطلاعاتی در چند ثانیه ذخیره می کنم
    البته راستش در مورد پیامک هم هنوز کارم تکمیل نشده و انشاءالله اگر اجازه بدید در همون پست پیامک مزاحمتون خواهم شد

    عزت زیاد

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام و روز خوش
    1- قدم اول این هست که یک وب سرور داشته باشین. وضعیت مجموعه کاری شما رو نمیدونم، ولی اگر روی شبکه وب سرور ندارین یکی روی سیستم خودتون راه اندازی کنین.
    در محیط ویندوز همون iis انتخاب مناسبتری هست چون علاوه بر زبانهای دات نت از php هم پشتیبانی میکنه و در ضمن نیاز به برنامه نصب جداگانه نداره و از امکانات داخلی سیستم عامل هست.
    2- گام بعدی انتخاب زبان کدنویسی سمت سرور هست که برای کار شما vb.net راحتتر و مناسبتر هست.
    البته معمولا اول باید این تکنولوژی انتخاب بشه و بعد وب سرور، ولی این برای سرورهایی هست که قراره روی اینترنت قرار بگیرن، شما در محیط ویندوزی هستین و یک انتخاب اولیه انجام شده دارین.
    3- یک محیط برنامه نویسی نیاز دارین (IDE) که خب انتخاب مناسب visual studio هست (دست کم ورژن 2015) - هر چند که با notepad هم میتونین شروع کنین!

    هیچ کدوم این ها به اکسس مربوط نمیشه ولی اگر در موردش سئوال داشتین شاید بتونم کمک کنم.

    4- در مورد ارسال پیامک از طریق وب سرویس هم موردی نیست، بلد باشم راهنمایی میکنم.

    5- یک مورد رو یادآور بشم که شخصا به این که "هر کاری در اکسس (یا ...) شدنی هست" باور ندارم و درست نمیدونم،
    ولی این درست هست که: اگر اکسس (یا ...) گزینه مناسبی برای یک مسئله باشه، باید روش درست و مناسب استفاده از اون رو پیدا کنیم و یاد بگیریم و به کار ببندیم.

  12. #12
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

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

  13. #13
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام
    بعد از پرس و جو از بخش فناوری محل کار متوجه شدم فعلا از روشی که استاد فرمودند نمیتونم استفاده کنم چرا که نرم افزار cms اونجا این پشتیبانی رو نداره و به هر حال فعلا همکاری نکردند ولی با گوگل دو مورد پیدا کردم که یه جورایی ممکنه خواسته من رو برآورده کنه.
    یک نمونه صرفا ارتباط با دیتابیس از وب بروزر فرم هست و مورد دوم یه نمونه از برنامه ای است با یک فرم اکسس که می شه بقیه فرم ها رو به صورت فرم های html در اون طراحی کرد.
    در هر صورت خواسته من در وهله اول ثبت دیتا و در وهله دوم اگر بشود واکشی اطلاعات و نمایش در وب بروزر فرم هست. به نظرم برای شروع اگه بتونم فرم ثبت اطلاعات را بسازم خوبه تا بقیه کار چه جوری پیش بره.
    در این نمونه روابط بین فایلهای جاوا اسکریپت، صفحات html و کدهای اکسس ایجاد شده است. شاید با یکم ساده سازی بتونم استارت کار رو بزنم. به نظرم جنابعالی تنها از عهده این کار سخت ( از نظر من ) بر می آیید

    آدرس نمونه دوم
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله mohammadsaleh : چهارشنبه 29 اردیبهشت 1400 در 13:31 عصر

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    سلام و روز خوش
    سر فرصت برنامه پیوست رو نگاه میکنم ولی هنوز خواسته شما رو دقیق نگرفتم - این "محل نزاع" هم باید مشخص بشه.
    این که یک کاری از نظر فنی شدنی باشه یک چیز هست، و اینکه آیا وقت و انرژی که بابتش میگذاریم نسبت به دستآوردش ارزش داره یا نه چیز دیگه.
    البته من تا رسیدن به یک نتیجه روشن و قطعی در بحث شرکت میکنم، ولی از یک جایی به بعد باید در بخش های دیگه انجمن مطرح بشه و اونجا ادامه پیدا کنه،
    بخصوص که کاربرهای باتجربه ای هستن که تخصصی تر این موارد رو کار کردن.
    =====
    پ.ن: لطفا به همین اسم مازولاق بسنده کنین و پست رو هم جوری ویرایش کنین که دیگران هم علاقه به شرکت داشته باشن.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    این برنامه که پیوست کردین یک پروژه قدیمی است و از اکتیوایکس استفاده کرده، بنابراین:
    1- فقط در مرورگر internet explorer قابل اجراست - تا اینجا مشکلی نیست چون کنترل web browser هم برمبنای همین مرورگر هست
    2- از کتابخانه jquery استفاده شده - این کتابخانه در ورژن های قدیمی ie کار نمیکنه و چون کنترل web browser بر پایه ie7 هست باحتمال خیلی زیاد در این کنترل کار نخواهد کرد.

    ببینید، در این روش (استفاده از اکتیوایکس و کد clientside) نهایت چیزی که بدست میارین اینه که دیتا رو از دیتابیس یا فایل و ... بخونین و نمایش بدین (فقط نمایش)
    از نظر ظاهر هم محدود به کنترل های html هستین و برای ساخت صفحه های زیبا باید تسلط به css , javascript داشته باشین و کار زیادی هم میبره.

    دست کم وقتی server side کار میکنین دسترسی زیادی به کنترل های متنوع دارین که اینها تمام کدهای client side رو خودشون میسازن.

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

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

  16. #16
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    تشکر از راهنمایی های ارزنده تون
    بله در حقیقت من الان همانطور که در خط آخر اشاره کردید کدهای html و اسکریپتهای مورد نیاز و حتی استایل ها را در بخش کدهای فرم نوشته و خروجی کار رو در وب بروزر نمایش میدم. اما خوب این فرآیند یک طرفه است و همیشه از سمت کدهای vba است و تلاش و پیگیری من اجرای دستورات از سمت وب بروزر هست. نمیدونم نمونه دوم را که در انتهای پیام گذاشته بودم دیدید یا نه و لی در اون نمونه این اتفاق افتاده یعنی با کلیک بروی دکمه روی وب بروزر تابع نوشته در ویژوال بیسیک قابل اجراست ( مثلا ذخیره اسم و ایمیل فرد در جدول برنامه : البته در نمونه کدش رو تکمیل نکرده ولی من تست کردم ذخیره انجام شد)

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    این که "محل نزاع" باید مشخص بشه بخاطر همین هست که طرفین بدونن دارن روی یک چیز مشخص و معین بحث میکنن.
    هنوز برای من مشخص نیست که چرا باید وقتی دسترسی مستقیم به دیتابیس داریم، باید از طریق مرورگر و اون هم clientside کار کنیم.
    اگر برای ظاهر هست که باید css/html/javascript رو یاد گرفت و به سختی و صرف وقت زیاد به نتیجه ای رسید که در serverside در چند دقیقه پیاده میشه.
    اگر اکسس برای کار ما جوابگو نیست و قرار هست از تکنولوژی دیگه ای استفاده کنیم و وقت برای یادگیری بگذاریم مستقیم میریم سراغ desktop app یا web app.

    پست قبلی من در مورد همین پیوست آخری بود بنابراین حتما دیدم!

    یک بار دیگه اصول رو مرور میکنیم:
    1- کدهای javascript به منابع خارج از مرورگر دسترسی ندارن مطلقا (مگر از طریق activex که اون هم فقط در ie قابل اجراست)
    بنابراین از داخل مرورگر نمیتونین کد vba اکسس رو اجرا کنین - فقط میتونین با اکتیوایکس کار کنین.
    2- کنترل webbrowser بر مبنای ie7 هست بنابراین اگر کد یا قابلیتی نیاز به ورژن بالاتر داشته باشه، در این کنترل اجرا نخواهد شد.
    من هنوز شک دارم کد های اون نمونه پیوست در وب بروزر اجرا بشن (بدلیل استفاده از jquery)

  18. #18
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

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

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

    Each HTML template is granted by the framework with a unique eventDispatcher element at runtime that automaticaly connect the HTML events with your VBA code via internal GUID.

    Now all you have to do is place this little piece of code in your HTML element to react to HTML events in VBA:

    کد HTML:
    xhv-eventlistener xhv-event="click" xhv-eventhandler="ShowMessage" xhv-params=""
    Which means, when the user click on this HTML element (this can be a button or any clickable HTML element), call this VBA function (MyVBAFunction) in the component with these parameter values (xhv-params).
    Example, you want to show a msgbox when the user pass over a HTML link:
    In the HTML :

    کد HTML:
    <a  xhv-eventlistener xhv-event="onmouseover" xhv-eventhandler="ShowMessage" xhv-params=""
    Call msgbox
    </a>
    In the component VBA code:

    Public Sub ShowMessage(ParamArray args() As Variant)
    MsgBox args(0)
    End Sub


    That’s it!
    When the user hover the link, HandleView will dispatch the event to the ShowMessage Function of the component and include “Hi” as a string parameters to the function in the args() ParamArray.
    Now, what you do in your function is up to you You want to save a client in your database, do it. You want to show a Popup windows created in JavaScript, call it (with a VBA helper function), it’s pretty full VBA from now on

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    اینجا جایی هست که باید یک برنامه پیوست کنین که موارد گفته شده بالا در اون پیاده شده باشه.
    و رفرنس به منبع اصلی رو هم اضافه کنین.

    اگر نتیجه گرفتین و مشکلی در اجرا هم نیست و همه چیز طبق روال داره انجام میشه، پس گیر کار کجاست و چه راهنمایی نیاز دارین؟
    من واقعا هنوز نکته این مبحث رو نگرفتم که بفرض انجام درست همه اینکارها ، یک فرم وبی CLIENTSIDE چه مزیتی نسبت به فرم اکسس داره اون هم زمانی که خودش در یک فرم اکسس اجرا میشه؟!

    شاید بعنوان یک چالش کدنویسی جالب باشه ولی دست آخر واقعا so what؟

  20. #20
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    منبع رو که در پست های بالا گذاشتم داتلود
    در اون منبع همه فایلهای مورد نیاز و راهنمای برنامه به صورت کامل آورده شده است

    بنده خیلی ساده عرض کردم غرضم اجرای کدهای vba از طریق وب بروزر هست که در این نمونه این کار انجام شده است.
    فایل اصلی و الحاقات آن را آپلود کردم تا هم دوستان ببینند و هم کمک نمایند تا نحوه استفاده از کدها را بیابیم. اگر دقت کرده باشید از دوستان تقاضا داشتم که یک ساده سازی انجام پذیرد تا غرض اصلی محقق شود. من کاری به استایل ها و غیره ندارم. در یک جمله : فقط می خواهم با کلیک روی دکمه بروزر یک تابع از ماژول اجرا شود

    شاید استفاده از این فرم مزیتی که نداشته باشد کار برنامه نویس را سخت و مشکل هم بکند اما غرضم کشف این رابطه بود
    قطعا اگر این رابطه را تا به حال یافته بودم مزاحم دوستان و شما نمی شدم

    بی شک فردی هم که این نمونه را ساخته زحمت زیادی برای آن کشیده است!! خوب من اتفاقی این برنامه را یافتم و حداقل شخصا بدنبال نحوه عمل آن هستم. برنامه های زیادی با اکسس نوشته شده که زحمت زیادی برای آن کشیده شده و الان گوشه کامپیوتر افراد رها شده ولی به هر حال ممکن است گوشه ای از برنامه به کار یک نفر آدم خلاق بیاید و از آن استفاده کند. خوب من هم گفتم از شما جوانان یک کمکی گرفته باشم برای خلاقیتی که در این سن و سال در من گل کرده است.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    منبع رو که در پست های بالا گذاشتم داتلود
    در اون منبع همه فایلهای مورد نیاز و راهنمای برنامه به صورت کامل آورده شده است
    نمیدونم نمونه دوم را که در انتهای پیام گذاشته بودم دیدید یا نه
    خب این پیوست بعدا اضافه شده و من ندیدم.
    از نظر من نمونه اول پیوست پست 1، و نمونه دوم پیوست اولیه پست 13 بوده (قبل از ویرایش اون و اضافه کردن یک لینک به نام نمونه دوم)

    و منظور از رفرنس هم لینک به جایی هست که مطلب اصلی آمده،
    بنابراین رفرنس نمونه دوم (پیوست اولیه پست 13) میشه:
    http://accessdb.sourceforge.net/

    و رفرنس لینک اضافه شده (همون پست 13) :
    https://github.com/apguerard/HandleView-DevPreview

    این بابت روشن بودن مطالب و هماهنگی.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    مورد بعد:
    در اون نمونه این اتفاق افتاده یعنی با کلیک بروی دکمه روی وب بروزر تابع نوشته در ویژوال بیسیک قابل اجراست ( مثلا ذخیره اسم و ایمیل فرد در جدول برنامه : البته در نمونه کدش رو تکمیل نکرده ولی من تست کردم ذخیره انجام شد)
    این برنامه رو پیوست نکردین! منظور همونی که خودتون تست کردین و کار میکنه.
    یعنی کد جاوااسکریپت کد vba رو اجرا کنه و گرنه از طریق اکتیوایکس مشکلی نیست و همونجور که از دیتابیس دیتا رو میشه خوند میشه نوشت و ویرایش و حذف کرد.

    و اما اونچه که من رو گیج کرده این هست:
    در یک جمله : فقط می خواهم با کلیک روی دکمه بروزر یک تابع از ماژول اجرا شود
    که قاعدتا باید قبلا جواب گرفته باشین.

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    همه این ها به کنار:
    خوب من هم گفتم از شما جوانان یک کمکی گرفته باشم برای خلاقیتی که در این سن و سال در من گل کرده است.
    من جوان متولد 1331 ام و اگر اینجا (و چند جای دیگه) پست میگذارم برای جلوگیری از آلزایمر هست!
    برای همین نمیتونم روی این نمونه آخری وقت بگذارم چون از حوصله و توان من خارج هست.
    ولی پست های اینجا رو دنبال میکنم و خوشحال میشم به نتیجه خوبی برسه.
    پیشنهاد میکنم در بخش vb6 و javascript هم پست بگذارین و به اینجا هم لینک بدین.

  24. #24
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

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

    ولی برای تست سایر کاربران عرض می کنم
    بعد از دانلود برنامه و اکسترکت فایل زیپ با گرفتن دکمه شیف وارد برنامه بشید و ابتدا مسیر برنامه و پوشه کامپوننتها و هاست را تنظیم کنید
    set.jpg
    در کلاس ماژول c_manageFormComponent کد زیر را وارد کنید


    Public Function saveViaStandardButton(ParamArray args() As Variant) As Boolean


    MsgBox "Save form with the id " & args(0)

    Dim S
    Dim strCN, strCE As String
    strCN = Forms!App!WB.Document.Forms(0).elements("txtName") .value
    strCE = Forms!App!WB.Document.Forms(0).elements("txtEmail" ).value

    DoCmd.SetWarnings False
    Dim SQL As String
    SQL = "INSERT INTO DEMOClient (ClientName,ClientEmail) VALUES ('@CN','@CE')"
    S = Replace(SQL, "@CN", strCN)
    S = Replace(S, "@CE", strCE)

    DoCmd.RunSQL S
    ' cn.Execute s


    End Function


    وارد فرم app بشید

    در قسمت ورود اطلاعات اسم و ایمیلی را وارد کنید و ذخیره کنید مثل زیر
    2.JPG
    در اینجا در حقیقت یک تابع از کلاس اجرا میشه و بعد از ذخیره اطلاعات با استفاده از دکمه وب بروزر شما مسیج باکس اکسس رو می بینید
    نتیجه ورود اطلاعات را هم میتونید به این شکل ببینید
    3.JPG
    خوب همه حرف من این بود این اتفاق کمی پیجیده است و من از عهده اون بر نیادم که بتونم تو یه فرم ساده با یک کلاس یا ماژول و کامپیونتهای مورد نیازش کار را درک کنم و توسعه اش بدم و شخصی سازی اش کنم. خواستم کمکی بشه و به قول معروف با مهندسی معکوس یک نمونه خیلی ساده تر از اون چیزی که می بینیم (و شامل نزدیک سی تا ماژول و کلاس هست و تعدادی فولدر و ... هست ) درست بشه

    ولی خوب ظاهرا قسمت نبود این پست فعلا خروجی ملموس و بیشتری نسبت به آنچه از آن قبل در مورد آن درک کرده ام برام داشته باشد ولی خوب تلاش می کنم با استفاده از راهنمای برنامه بالاخره به نتیجه برسم
    آخرین ویرایش به وسیله mohammadsaleh : پنج شنبه 06 خرداد 1400 در 17:27 عصر

  25. #25
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    نقل قول نوشته شده توسط mazoolagh مشاهده تاپیک
    همه این ها به کنار:

    من جوان متولد 1331 ام و .......
    سلام و عرض ادب به شما بزرگوار
    با انکه متولد 1331 هستید یعنی در مرز حدود 70 سالگی (درست میگم؟) و با صبر و حوصله و با دقت به سوالات پاسخ میدید جای سپاس فراوان داره
    ومن به احترام شما بلند میشم.
    ممنون

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

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    نقل قول نوشته شده توسط Ali_Fallah مشاهده تاپیک
    سلام و عرض ادب به شما بزرگوار
    با انکه متولد 1331 هستید یعنی در مرز حدود 70 سالگی (درست میگم؟) و با صبر و حوصله و با دقت به سوالات پاسخ میدید جای سپاس فراوان داره
    ومن به احترام شما بلند میشم.
    ممنون
    سلام و روز خوش
    این نظر لطف شماست جناب فلاح و باعث مباهات
    اینجا مطالب زیادی از دوستان ارزنده ای چون شما یاد گرفتم هرچند که شاید فرصت بکار بستن اونها نباشه.

    ================
    جناب محمدصالح؛
    روی کنترل webview2 هم مطالعه کنین - البته در اکسس قابل استفاده نیست!

  27. #27
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

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

    و از اینکه با صبر و حوصله به عزیزان پاسخ میدید و آنهم بصورت مفصل (نمونه اش همین صفحه) که واقعا مثال زدنی است ، جای تشکر و قدردانی بسیار فراوان داره

    انشاالله که من هم یاد بگیرم و منش شما رو داشته باشم.
    یا حق

  28. #28
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: فراخوانی دیتا با استفاده از کدهای جاوا اسکریپت WEBBROWSER فرم اکسس

    جناب محمدصالح؛
    روی کنترل webview2 هم مطالعه کنین - البته در اکسس قابل استفاده نیست!
    سلام و تشکر از جناب مازولاق ک وجودشون واقعا در اینجا نعمتی است برای افراد تازه کار و با سابقه گروه

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

  1. اسکریپت اررور WebBrowser
    نوشته شده توسط xrezax در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: سه شنبه 02 مرداد 1397, 23:32 عصر
  2. مشکل با جاوا اسکریپت در کنترل WebBrowser
    نوشته شده توسط Xcalivorse در بخش C#‎‎
    پاسخ: 2
    آخرین پست: چهارشنبه 29 آبان 1392, 21:48 عصر
  3. جاوا اسکریپت WebBrowser
    نوشته شده توسط aleas2 در بخش برنامه نویسی در 6 VB
    پاسخ: 0
    آخرین پست: دوشنبه 25 شهریور 1392, 10:43 صبح
  4. پاسخ: 1
    آخرین پست: دوشنبه 18 شهریور 1392, 17:45 عصر
  5. اینکریپت کردن دیتابیس اکسس 2010
    نوشته شده توسط programerinfonet در بخش C#‎‎
    پاسخ: 2
    آخرین پست: پنج شنبه 06 تیر 1392, 16:56 عصر

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

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