الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تعبئة نموذج ويب من خلال أكسس

مغلقمُجاب
بدأه CRAZY_IN_LOVE في 21 يناير 2013 · 24 رد · 7,145 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
السلام عليكم
الى كل الاخوة الاعزاء والسيرفر والاعضاء يرجى التفضل بمساعدتي  
لدي برنامج مصممه عن طريق الاكسس وفيه نموذج به معلومات عماله والمعلومات اقوم بادخالها مره اخري بصفحت ويب موقع انجاز www.enjazit.com.sa المطلوب هل استطيع نقل البيانات مباشره من النموذج الي الموقع او طريقه تعبيه الصفحه من خلال زر في النموذج...ومرفق لكم صوره من صفحة الموقع..
ولك جزيل الشكر والاحترام  :)
  •  

post-83548-0-12805600-1358730523_thumb.j

#2

وعليكم السلام

 

نعم يمكنك ذلك.. إليك المثال (WebAppFiller.zip)

 

- كيف يمكن معرفة الحقول المطلوب تعبئتها؟

 

يمكنك إنشاء كائن ويب داخل أكسس ضمن النموذج كما في المثال، كما أنه بالإمكان إنشاءه خارج أكسس بفارق بسيط في الشفرة.. في نظري الخيار الأول أفضل.

 

- بعد إنشاء الكائن يمكن فتح صفحة الويب من خلاله وهذه هي الشفرة المعنية بذلك

Private Sub Form_Load()
    DoCmd.Maximize
    
    '- OPEN THE WEB PAGE IN THE WEB BROWSER OBJECT
    Me.WebBrowser4.Navigate "https://www.enjazit.com.sa/VisaPerson"
End Sub

 

- بعد فتح الصفحة يمكنك استهداف عناصرها عن طريق مكون الصفحة (Me.WebBrowser.Document) كالتالي

Sub FILL_DATA()
    '- WITHIN WEB BROWSER OBJECT FILL INPUT FIELD WITH DATA.
    '-- USUALLY INPUT FIELDS FOUND IN FORM ELEMENT, 
    '-- IN THIS CASE THE FIRST FORM ELEMENT IS THE TARGET.
   
    With Me.WebBrowser4.Document.Forms(0)
            .AFIRSTNAME.Value = Me.AFIRSTNAME
            .AFATHER.Value = Me.AFATHER
            .AGRAND.Value = Me.AGRAND
            .EFIRSTNAME.Value = Me.EFIRSTNAME
            .EFATHER.Value = Me.EFATHER
            .EGRAND.Value = Me.EGRAND
            .PASSPORTnumber.Value = Me.PASSPORTnumber
    End With
End Sub

 

- تكون حقول حقول الإدخال عادة ضمن عنصر نموذج  (<form></form>) ويمكن استهدافه عن طريق خصيصة التعريف (id) الا أن النموذج في هذه الصفحة غير معرف.. وعوضا عن استهدفناه برقمه في قائمة أعضاء المكون ((Document.Forms(0)  وهو هنا بالرقم صفر.

 

- أما الحقول فهي هنا معرفة وقد استهدفنها بالمعرف مباشرة.. يمكن الوصول إليها عن طريق أدوات التطوير في المتصفح المفضل لديك.. بالنسبة لي أستخدم المتصفح (OPERA) وهذه هي صورة أدواة التطوير وكيفة الوصول إلى معرف الحقول

 

post-10429-0-97479100-1359130347_thumb.p

 

- بعد ذلك يمكننا اسناد قيمة الحقول في قاعدة البيانات إلى الحقول في صفحة الويب ضمن مكون التصفح  في النموذج 

 

يمكن السؤال عما يشكل عليك

#3

عجزت الكلمات تعبر عن مدى الجميل و العرفان اللي بدر منك تجاهي كلمة شكراً ما تكفي و المعنى أكبر ما توفيه أعبر لك عن مدى شكري :) 

#4

السلام عليكم

واجهتني مشكله PASSPORType  نوع الجواز  .. هل بالمكان تساعدني بتكملة الصفحه .وهل بالامكان بعد الظغط علي COPY DATA TO
WEB BROWER يقوم بالتعبيه مع الحفظ

ولك جزيل الشكر وفائق الاحترام

#5
CRAZY_IN_LOVE كتب:

عجزت الكلمات تعبر عن مدى الجميل و العرفان اللي بدر منك تجاهي كلمة شكراً ما تكفي و المعنى أكبر ما توفيه أعبر لك عن مدى شكري :) 

 

 

كلمة (جزاك الله خيرا) أبلغ كلمة تقال للتعبير عن الشكر.

 

- هل تعني أن أجعل أكسس يقوم بضغط مفتاح (حفظ) في الصفحة نيابة عنك؟!

 

- سأفعل ما بوسعي هذه الليلة إن شاء الله لإكمال المطلوب.. فلا تقلق..

#6

جزاك الله خيرا ورحم الله والديك

اخي الفاضل لاتنسي PASSPORType مارضي ينقل البيانات اليه ممكن لانه قائمه منسدله وكيف حلها

واشكرك علي اهتمامك وسرعه تجاوبك والله يجعلها في ميزان حسناتك

#7

في الحقيقة أخذ مني البحث عن السكربت المسئول عن إعادة إظهار مربع النص (وليس مربع قائمة منسدلة كما هو متوقع) الوقت الكثير ولم أتمكن إلى الساعة من إيجاده (لعل أحدكم يمكنه ذلك) وليس من الأهمية بمكان ولكن من أجل إكمال ظهور البيانات في مرباعات النص المخفية في مكانها المناسب! وعلى أي حال فالمهم هنا هو معرفة البيانات المناسبة لكل مربع من مربعات النص تلك.

 

لكون التقنية المستخدمة هنا تعتمد في الأساس على (JQuery) فيمكن العثور على هذه البيانات إما داخل جسم الصفحة أو في ملف سكربت منفصل.. وهي هنا داخل جسم الصفحة.. وفي التالي صورة لمقطع من البيانات 

 

post-10429-0-08759400-1359492696_thumb.p

 

في المرفق التالي قمت بتعديل جزء نوع الجواز.. لكن لن تتمكن من روئية البيانات إلا بعد حفظها لما ذكرته آنفا.. أرجو ألا يدعو هذا للقلق.. المهم هو السيطرة على البيانات.. وهذا ممكن كما ذكرت 

 

WebAppFiller.zip

#8

B)

جزاك الله خيرا ورحم الله والديك

 

اشكرك علي حسن تعاونك بخصوص موضوع الحفظ هل بالامكان عند الضغط علي COPY DATA TO
WEB BROWER يقوم بالتعبيه ثم الحفظ

#9

لا.. لايمكن.. لأنه ليس بمقدورنا اقتباس رمز الصورة، وبالتالي نحن مضطرون للذهاب إلى الصفحة من أجل إدخال الرمز ومن ثم يكون زر الحفظ في الصفحة هو الأقرب!

 

لكن ماذا لو كان العكس.. بمعني نقوم بإدخال البيانات في الصفحة ومن ثم نحفظها في كل من الصفحة وفي جدول قاعدة البيانات.. بواسطة  زر في النموذج يتولى هذه المهمة؟!

 

إذا كان هذا مناسب لك.. فإليك المثال

 

WebAppFiller.zip

#10
القحم كتب:

لا.. لايمكن.. لأنه ليس بمقدورنا اقتباس رمز الصورة، وبالتالي نحن مضطرون للذهاب إلى الصفحة من أجل إدخال الرمز ومن ثم يكون زر الحفظ في الصفحة هو الأقرب!

 

لكن ماذا لو كان العكس.. بمعني نقوم بإدخال البيانات في الصفحة ومن ثم نحفظها في كل من الصفحة وفي جدول قاعدة البيانات.. بواسطة  زر في النموذج يتولى هذه المهمة؟!

 

إذا كان هذا مناسب لك.. فإليك المثال

 

attachicon.gifWebAppFiller.zip

جزاك الله خير

بخصوص ادخال الرمز لايوجد في صفحتي الاساسيه  عندما ادخل علي حسابي تكون نفس الصفحه بدون رمز الصوره.. بيانات ثم زر العوده وحفظ فقط

ادري اني اتعبتك تحملني ومشكور

تم تعديل هذه المشاركة بواسطة CRAZY_IN_LOVE في 31 يناير 2013 في 05:46

#11

أولا.. أرفقت في المشاركة السابقة مثالا ناقصا عن طريق الخطأ.. أعتذر عن هذا القصور المربك

ثانيا.. إذا كان الأمر كما ذكر.. فأكون قد أجبت على تساؤلاتك فعلا بالمثال التالي.. 

 

WebAppFiller.zip

 

والحمد لله أولا وآخرا

تم تعديل هذه المشاركة بواسطة القحم في 31 يناير 2013 في 07:29

#12

جزاك الله كل خير يامبدع  واسأل الله ان يوفقك في الدنيا والاخره

لدي سؤال لدي في الدريف D مجلد وفيه الصور هل بالامكان عند الضغط  COPY DATA TO
WEB BROWER  يستعرض المجلد ورفق الصوره

ولك الشكر

#13
القحم كتب:

أولا.. أرفقت في المشاركة السابقة مثالا ناقصا عن طريق الخطأ.. أعتذر عن هذا القصور المربك

ثانيا.. إذا كان الأمر كما ذكر.. فأكون قد أجبت على تساؤلاتك فعلا بالمثال التالي.. 

 

attachicon.gifWebAppFiller.zip

 

والحمد لله أولا وآخرا

السلام عليكم اخي الحبيب

تم التعديل علي الكود لكي يتم الحفظ في اي صفحه من صفحات الموقع مثل ( https://enjazit.com.sa/Enjaz/GetVisaInformation/Org )

بحذف (WD.getElementsByName("COMMAND").Item(1).Click) في Sub CMD_CDTWB_Click()

واضافه (submit.) في اخر سطر من Sub FILL_DATA_TO_WEB()

مرفق الملف بعد التعديل وهذا من فضل الله سبحانه ثم جهودكم المباركه

WebAppFiller.rar

#14

أحسنت صنعا.. هذا هو الصواب 

 

لكن ماذا تقصد بـــ

 

اقتباس

تم التعديل علي الكود لكي يتم الحفظ في اي صفحه من صفحات الموقع مثل ( https://enjazit.com.sa/Enjaz/GetVisaInformation/Org )

 

فأنا لا أتوقع أن يحدث ذلك أبد بدون رسالة خطأ!! خاصة وأنك وضعت النهج (Submit) ضمن الإجراء الخاص بنسخ البيانات

 

- أما إذا أردت أن تنشئ زر أمر يقوم بقدح النهج (Submit) لإرسال بيانات العنصر (Form) في أي صفحة؛ فيمكن ذلك بشرط

-- أن لا يكون في الصفحة أكثر من عنصر (Form)

-- أن تستهدفه بالشفرة التاليه

Your_Object.Document.Forms(0).Submit

وعلى كل حال فأنت قمت بعمل جيد عند إجراءك التعديل.. لكن لا أوافقك على الفكرة في الإقتباس أعلاه..

#15

السلام عليكم ورحمة الله وبركاته

 

 

متابع الموضوع ومستمتع جدا .. وبحب اشكر اخونا القحم... شكرا جزيلا وجزاك الله خيرا

تم تعديل هذه المشاركة بواسطة H_O_A في 1 فبراير 2013 في 18:06

#16

جزاك الله كل خير يامبدع واسأل الله ان يوفقك في الدنيا والاخره

لدي سؤال لدي في الدريف D مجلد وفيه الصور هل بالامكان عند الضغط COPY DATA TO
WEB BROWER يستعرض المجلد ورفق الصوره

ولك الشكر

#17

عرفنا فيما سبق أنه من الممكن استهداف أزرار الأوامر في الصفحة وقدح الحدث (OnClock)  عن طريق الشفرة.. وبناء عليه يمكن أيضا استهداف رز الأمر (استعراض) والاستفادة من مربع حوار فتح الملفات بدلا من أن ننشئ واحدا مثله من داخل أكسس.. وذلك من مبدأ استثمار الموارد الممكنة.

 

- لكن أين تحفظ بيانات الصورة؟

في الحقيقة يوجد عنصر (Input) من نوع (File) يتولي حفظ بيانات الصورة ليتم فحصها عن طريق شفرة.. فإذا كانت مطابقة للمواصفات المطلوبة فسيتم عرضها في عنصر (Img) المخصص لذلك.. وثم نقلها إلى السيرفر عند نقل بيانات النموذج.. أما إذا كانت الصورة غير مكابقة فسوف تظهر رسالة خطأ للتنبيه.

 

- ماذا فعلت؟

لأن المطلوب جعل جميع الإجراءات تحت زر أمر واحد.. (كما هو طلبك)

قمت بقدح الحدث (Onclick) والانتظار حتى الانتهاء من فحص الصورة.. فإذا كانت الصورة غير مطابقة فسوف تظهر رسالة الخطأ.. فعندئذ أقوم بإنهاء العملية والخروج من الإجراء لكلا يتم نسخ البيانات إلى الصفحة دون وجود الصورة (سوف تتم المطالبة بالصورة حتى مع نسخ البيانات) وذلك مراعاة للناحية الجمالية فقط.. أما إذا كانت الصورة مطابقة فسيتم نسخ البيانات ونقلها مع الصورة إلى السيرفر.. هذا كل شيء.

 

إليك المثال بعد إجراء التعديل

 

WebAppFiller.zip

تم تعديل هذه المشاركة بواسطة القحم في 2 فبراير 2013 في 01:18

#18

B)

جزاك الله خير  وبيض الله وجهك

المثال ممتاز والحمد الله الي كان اقصده ان يستهدف مسار الصوره بدل من ان يستهدف الامر استعراض مثال ان المسار يوجد في  D:\Images واسم الصوره EP0674580  المقصودD:\Images\EP0674580.jpg

اي عند الضغط علي الامر يتم استهداف المسار  D:\Images\EP0674580  ثم ينسخ البيانات ثم الحفظ

واسف علي كثر الازعاج

ولك جزيل الشكر

−1
#19

الأخ  CRAZY_IN_LOVE

 

لاتنسى بأن تضغط على زر أفضل إجابة و ذلك بعد تيقنك بأنك حصلت على ماتريد ، لأنه بمجرد الضغط على ذلك الزر فسيتم غلق الموضوع تلقائيا . 

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 
#20

قبل أن أوضح الإشكالية المتعلقة بالصورة أشير إلى أنه وقع خطأ في المثال السابق ويجب استبداله بالمثال التالي

WebAppFiller.zip

 

نأتي الآن على توضيح الإشكالية الصورة؛ وهي كما يلي

- أهم هذه الاشكاليات أن الصورة لا تحفظ بالمسار ولا بالصيغة التي تم أرسال الصورة بها

- أن الصورة تحفظ في الخادم الخاص بالموقع بعد تغليفاها

- أن هناك أرقام عشوائية يتم توليدها مع الصورة أثناء إرسالها!!.. انظر الى هذه الشفرة

 

<script type="text/javascript">
    function OnSuccess(e) {

        document.getElementById("image").src = "/VisaPerson/GetImage?" + Math.random();
        document.getElementById("divErrorMsg").style.display = "none";
    }
    function OnError(e) {

        document.getElementById("divErrorMsg").style.display = "block";
        e.preventDefault();
    }
    function OnRemove(e) {

        document.getElementById("image").src = "../../Styles/Images/photo.png?" + Math.random();
        document.getElementById("divErrorMsg").style.display = "none";
    }
</script>

 

 

وانظر إلى عنصر الصورة بعد تغليفها وإرسالها للخادم هنا

<td rowspan="2" class="requestphoto hajj">
  <img id="image" runat="server" src='VisaPerson/GetImage?1762733831'  />
</td>

 

 

أرجو أن تكون فكرة استخدام مربع حوار الملفات قد اتضحت الآن.. وأنها ضرورية

#21

بيض الله وجهك ورحم الله ولديك واكرر شكري الجزيل لك خاصه والاخوه الكرام وللمنتدي الفاضل ،، واطلب من الله سبحانه التوفيق للجميع

#22

بيض الله وجهك ورحم الله ولديك واكرر شكري الجزيل لك خاصه والاخوه الكرام وللمنتدي الفاضل ،، واطلب من الله سبحانه التوفيق للجميع

القحم كتب:

أولا.. أرفقت في المشاركة السابقة مثالا ناقصا عن طريق الخطأ.. أعتذر عن هذا القصور المربك

ثانيا.. إذا كان الأمر كما ذكر.. فأكون قد أجبت على تساؤلاتك فعلا بالمثال التالي.. 

 

attachicon.gifWebAppFiller.zip

 

والحمد لله أولا وآخرا

السلام عليكم اخي الفاضل لايمكنني ان انقل البيانات من الصفحه الي الجدول يوجد خطاء

post-83548-0-93213600-1359850174_thumb.j

#23 أفضل إجابة

التصحيح في المرفق التالي

 

WebAppFiller.zip

1
#24

مشكور وماقصرت والله يجزاك كل خير

#25

إذاً أطع نائب الرئيس

 

فيصل الحربي كتب:

الأخ  CRAZY_IN_LOVE

 

لاتنسى بأن تضغط على زر أفضل إجابة و ذلك بعد تيقنك بأنك حصلت على ماتريد ، لأنه بمجرد الضغط على ذلك الزر فسيتم غلق الموضوع تلقائيا . 

 

الحمد لله الذي علم بالقلم

1

هذا الموضوع مغلق.

مواضيع مشابهة