-
Posts
707 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
13
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو أبو إبراهيم الغامدي
-
لا تشغل بالك! كنت حضرت هذه الدالة مع صاحباتها في الوحدة النمطية MTextUtilities لاختزال الشفرة التي تفضلت بها أنت. لكن عندما رجعت إلى زر أمر التلوين وجدك سبقتني لذلك! فأخذت الشفرة من تحت زر الأمر ووضعتها في الوحدة النمطية خاصتك وسميتها بنفس الاسم.. إلا أني غيرت في اسم الدالة خاصتي بزيادة شرطات سفلية في نهايتها حتى لا يحدث تعارض بين الأسماء.. أما عن Public: فجميع الإجراءات والدالات التي تكتب تحت الوحدة النمطية فإنها تأخذ الوضع Public كوضع افتراضي.. وبناءً عليه كتبتها أو لم تكتتبها؛ سيان.. لا تحزن.. فضيفك لم يعتد السمين من الطبخ! ولم يألف سوى الإقط والسمن! وأخشى أن يغص بالسمين...
-
نحن في انتظارك!
-
هذا الكلام موجه لك، ولا أعتقد أن فيه مايشير إلى الاستاذ @Khalf وطالما أني فتحت هذا الباب فسوف أسده بإذن الله.. في المرفق قمت بإجراء بعض التعديلات غير المخلة بما تفضل به الأستاذ @Khalf من الفكرة الرائعة.. وطبقت ما أشار إليه الأستاذ @jjafferr أعلاه.. هذا المرفق هو تطبيق لما سبق أن ذكرت من مقتراحات.. Colorizing (1).accdb
-
هذه الأيقونة لملف يحمل بيانات نصية بها اسم الكمبيوتر واسم مسئول قاعدة البيات! وليس منها ضرر أبداً.. إذا لم يغلق تلقائيا فلا تحاول حذف هذا الملف أبداً يمكن فتح هذا الملف بإي محرر نصوص لتعرف مابداخله
-
حتى يكون هذا العمل مثمراً أقترح عليك التالي.. -- ابتعد عن حفظ إجراءات تلوين الحواشي في الجدول لأن هذا سيؤثر على حجم الجدول وبطيء من أداءه! وفي الواقع أن تحتاج إلى الحاشية الملونة فقط عند عرض البيانات.. لحل هذا اللازم أقترح عليك إنشاء استعلام من جدول Book، وتعرف فيه عامودا جديد باسم النص الملون وتربطه بدالة تلوين النص، مع التأكد من تغيير خاصية نوع النص في العامود إلى RichText.. -- قبل هذا أنت بحاجة إلى اختزال دالة تلوين النص في دالة واحدة حتى تتمكن من ربطها في الاستعلام.. يلزمك قبل استخدام هذه الدالة جلب قيم سجل التلوين باستخدام تابع تجميع البيانات Dlookup على الأقل لاختزال دالة تلوين النص نستخدم عبارة شرطية If.. كالتالي Public Function ColorTxtOnePeace(myData As String, ColorTxtStart As String, _ Optional ColorTxtEnd As String = vbNullString, Optional ColorCode As String = 0) If ColorTxtEnd = vbNullString Then myData = Replace(myData, ColorTxtStart, "<b><font color=" & ColorCode & ">" & ColorTxtStart & "</font></b>") Else myData = Replace(myData, ColorTxtStart, "<b><font color=" & ColorCode & ">" & ColorTxtStart) myData = Replace(myData, ColorTxtEnd, ColorTxtEnd & "</font></b>") End If ColorTxtOnePeace = myData End Function -- ما يتعلق باختلاف الحواشي بين الكتب فأقترح استخدام طريقة التحزيم: وهي أن تجعل لكل نوع من الحواشي حزماً من الألون وفقاً للطريقة التي وضعاها صاحب التحشية.. لتحقيق هذا المطلب يلزمك إضافة حقل بيانات جديد إلى جدول التلوين برقم معرف المحشي.. تنشيء جدولا جديدا بحقلين على الأقل: الأول رقم معرف بصاحب التحشية، والثاني باسم صاحب التحشية كمثال.. المعرف رقم: 1 اسم صاحب التحشية: الألباني المعرف رقم: 2 اسم صاحب التحشية: زهير
-
لا أضاع الله تعبك وجهدك أستاذ @Khalf .. فعلا حل ذكي! مع بساطته وسهولته.. وأشهد أنه أحد نوادرك.. شكراً لك..
-
سِحر جداول الاكسس في تسجيل الوقائع
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
أستاذ @jjafferr بل لك وافر الشكر والامتنان على تقبلك مداخلاتي -
أهلا بك @أبو عبدالله الحلوانى نعم ممكن.. لكن في مثالك لن تكون القيمة ثابتة! بل مجرد تحديث الصفحة سوف يرجع إلى وضعه الطبيعي، لكون الحقول غير مرتبطة بجدول بيانات.. الشفرة كالتالي -- نقوم بتحديد صفوف الجدول أولا لأن لنا معها أمران: الأول القيمة المطابقة للبحث وهي في الحقل الثاني من الصف، وللوقوف على الحقل المطابق يلزمنا عمل دوارة فحص.. الثاني إذا تطابقت البيانات نحدد الحقل الذي به صندوق الاختيار ومن ثم نعطيه القيمة True Sub IsChecked() Dim I As Integer Dim tr As Object Set tr = WD.querySelectorAll("table tr") For I = 1 To tr.length - 1 '-- check if second cell in the row matched textbox value If tr(I).childNodes(1).innerText = Me.Text0 Then '-- if true: in fifth cell in the row set checked property true tr(I).childNodes(4).childNodes(0).Checked = True End If Next End Sub TestCheckBoxOnHtml.zip
-
سِحر جداول الاكسس في تسجيل الوقائع
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
طلبي كان إعادة تجربة الشفرة بعد إدخال البيانات فقط نعم هناك طرق كثيرة لمعالجة البيانات وأبسط بكثير من RegExp إذا كانت البيانات في المقطع الأخير نصية وبها فراغات فإن استخدام Split في الدورة الثانية سوف يحدث خللا في البيانات وبما أن السجل التاريخي ذو بيانات ثابتة إلى المقطع الأخير فيمكن استخدام الطريقة التالية Sub SplitHistory() Dim XHistory Dim L, D, T, V XHistory = Split(Application.ColumnHistory("Products", "List Price", "id=1"), vbCrLf) For Each L In XHistory Debug.Print L D = Mid(L, 12, 10) ' Date T = Mid(L, 23, 8) ' Time V = Mid(L, 34) ' Value Debug.Print D, T, V Debug.Print Next End Sub -
سِحر جداول الاكسس في تسجيل الوقائع
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
أهلا أستاذ جعفر.. المثال مطبق على قاعدة البيانات المرفقة.. أرجو منك تكرماً تعديل بيانات الحقل List Price لسجل معين أكثر من مرة ثم إعادة تجربة الشفرة.. لا تنس تحديد قيمة لمعامل معيار التصفية -
كنت أتمنى أن تبدأ مشاركة جديدة حتى أتمكن من مساعدك! هذا مثال آمل أن تتمكن من معرفة آلية عمله وإذا احتجت إلى مزيد من المعلومات أرجو فتح مشاركة جديدة HTML Table.accdb
-
سِحر جداول الاكسس في تسجيل الوقائع
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
من الأشياء المتعلقة بهذا الموضوع (تتبع التغيرات).. في الإصدار 2007 البيانات من نوع ( ملاحظات Memo) وما بعده من الإصدارات (النصوص الطويلة Long Text) يوجد خاصية ضمن خواص هذا النوع من البيانات اسمها (Append Only)، عند ضبطها على (On) تقوم بتكديس البيانات السابقة للحقل في الخلفية بالتاريخ والوقت ولإعادة طلب البيانات نستخدم التابع Application.ColumnHistory، يأخذ هذا التابع ثلاثة عوامل: العامل الأول اسم الجدول، والثاني اسم الحقل، والثالث معيار التصفية ويعيد هذا التابع التاريخ والوقت والبيانات المتغيرة للحقل XHistory = Application.ColumnHistory("Products", "List Price", "id=1") [Version: 30/01/2022 09:55:41 ] 20 [Version: 30/01/2022 10:07:44 ] 30 يمكن معالجة البيانات باستخدام الإجراء التالي للحصول على بيانات نظيفة Sub XColHist() Dim RE As New RegExp Dim R, M As Match Dim XHistory As String, P As String '-- Refer to Microsoft Docum for more info XHistory = Application.ColumnHistory("Products", "List Price", "id=1") '-- Data History before processing Debug.Print XHistory Debug.Print '-- Data History after processed by RegExp P = P & "(\d{1,2}/\d{1,2}/\d{2,4})\s" ' date of change P = P & "(\d{1,2}:\d{1,2}:\d{1,2})\s\]\s" ' time of change P = P & "([A-Z0-9]+)" ' value of change '--Refer to regexp docum for more info RE.Pattern = P RE.IgnoreCase = True RE.Global = True '-- For Each M In RE.Execute(XHistory) For Each R In M.SubMatches Debug.Print R; Tab; Next Debug.Print Next End Sub Data History before processing [Version: 30/01/2022 09:55:41 ] 20 [Version: 30/01/2022 10:07:44 ] 30 Data History after processed by RegExp 30/01/2022 09:55:41 20 30/01/2022 10:07:44 30 لمزيد من المعلومات أرجو زيارة الرابط التالي Docs.Microsoft.ColumnHistory AppendOnly.accdb -
syntax dlookup شرح مبسط دوال المجال : Syntax DLookup
أبو إبراهيم الغامدي replied to ابو جودي's topic in قسم الأكسيس Access
أهلا بكم.. DLookup (Expr, Domain, Criteria) -- في معامل Expr: يمكن أن نستخدم Last First Count أو أي تابع من توابع أكسس أو تنشئ دالة تقوم بحساب أو فحص شئ ما. -- في معامل Criteria: يمكن أن نمرر إلى الحد الأيسر من المعيار أي من توابع أكسس مثل توابع التاريخ DateDiff أو Format أو Cstr. On Immediate Window ?Dlookup("UCase(First([Last Name]&', '&[First Name]))","Customers","City='Boston'") GRATACOS SOLSONA, ANTONIO ?Dlookup("UCase(Last([Last Name]&', '&[First Name]))","Customers","City='Boston'") AUTIER MICONI, CATHERINE ?Dlookup("'Count Records: '&Count([Last Name]&', '&[First Name])","Customers","City='Boston'") Count Records: 2- 6 replies
-
- 3
-
-
- dlookup
- dlookup function
- (و9 أكثر)
-
شاركوني في تهنئة فريق العمل بنجمها الجديد ، ابو جودي
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
أهلا بك أبا جودي في الفريق العمل.. عضو فاعل وصاحب مبادرات غير مسبوقة.. أتمنى لك مزيدا من التألق والعطاء.. -
أهلا بك.. كانت مدالخلتي في هذه المشاركة لكون اسمي ذكر فيها! والمرفق كانت لغرض محدد فقط وهو توضيح فكرة تجاوب مكونات HTML.. لتحويل الواجه من اليسار إلى اليمين، كل ماعليك هو تعديل بسيط على التابع WD ليصبح كالتالي Public Property Get WD() As HTMLDocument Set WD = Me.WebBrowser0.Document "WD.Dir = "rtl End Property
-
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بك.. مع أني اقتبست مشاركتك وأدرجتها في مشاركتي، إلا أنّ تركيزي كان منصب على QR الوفيديو الذي طلبت.. أعتذر عن ذلك.. سوف أقوم بعمل مشاركة بهذا الخصوص في أقرب فرصة إنشاء الله.. -
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بك.. للأسف لم يسبق لي أن سجلت فيديو من قبل! إذا كان تعلم الويب صعبا عليك فيمكنك استخدام أداة QRCodeAX كبديل.. قم بفك ضغط المرفق التالي في \:C ومن افتح قاعدة البيانات.. تسطيع نقل قاعدة البيانات لكن لا تسطيع نقل الأداة أو تغيير اسم المجلد! إلا إذا كنت تريد تسجيل الأداة من جديد Saudi Invoice With QRCodeAX.zip -
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بك.. عزيزي عبدالمجيد اطرح ما تريد هنا.. -
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
هذه معرفات لقيم رقمية تخص معاملات الإجراء ExecWB في مستعرض الويب. كل معرف من هذه المعرفات له قيمة.. للاطلاع على الإجراء ExecWB والقيم التابعة له: اضغط بالزر اليمين على المعرف ومن ثم اختر (Definition) لا أدري ما الذي يقابلها بالعربي وسوف تظهر لك جميع المعرفات التي تخص المعامل الذي نقرت عليه.... -
هل من الممكن معرفة الطريقة استاذ @أبو إبراهيم الغامدي @jjafferr ؟؟؟؟ أهلا بكم.. حتى أنا لا أعرف ما الذي يرمي إليه الاستاذ جعفر! أما عن الوسم المشار إليه: فهو يؤهل مستعرض ويب للعمل بالتقنيات الجديدة (HTML5) و (CSS3)، في هاتين التقنيتين أشاء كثيرة منها (تشغيل ملفات الصوت والصورة) دون الحاجة إلى أدوات خارجية. معرفة المزيد أرجو مراجعة منظمة مقاييس W3 | ومدرسة W3
-
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بك أستاذ جعفر.. أشكرك على تشجيعك وأهتمامك.. وأرجو أن أكون قد وفقت في شرح وتبسيط طريقة الاستخدام -
مكتبة الموقع - الفاتورة السعودية المبسطة
أبو إبراهيم الغامدي replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بكم.. نأتي الآن على الجزء المهم في هذه المشاركة: الجافا سكربت.. # سبق الذكر أن رمز الاستجابة السريع يتم إنتاجة بواسطة مكتبة قدمها أحد مطويري جافا سكربت، وقد قمت بتضمينها إلى جدول شفرات الويب WebXCode Table لأتمكن من استخدامها ضمن صفحة الويب، وذلك عن طريق الحقن الصوري! بمعنى أنك لو ضغط بزر الفارة الأيمن على الصفحة ثم نقرت View Source لن ترى هذه المكتبة، لكن في الحقيقة إنها موجودة! لكن تعمل في الخلفية! -- يلحق تضمين المكتبة، الأعلان عن متغير غرضي يحمل نسخة من المكتبة يُعرّف بمكان وضع الرمز والخصايص التي يحملها.. var Xqrcode =new QRCode('qr-stamp',{text:'QR Code',colorDark:'DarkBlue',colorLight:'WhiteSmoke',width:120,height:120}); وقد تم تضمين المكتبة والتصريح عن المتغير بالطريقة التالية WD.getElementById("qr-code").innerHTML = WebCode(3) _ & ";var Xqrcode =new QRCode('qr-stamp'," _ & "{text:'QR Code',colorDark:'DarkBlue',colorLight:'WhiteSmoke',width:120,height:120});" qr-stamp: هو معرف وسم HTML الذي سيوضع فيه الرمز، والبيانات التالية هي الخصائص، هذا المعامل إلزامي text: يحمل قيمة نصية تمثل بيانات الرمز؛ قد تكون بيانات نصية بسيطة، وقد تكون بيانات نصية مرمزة. ما يمرر على هذا المتغير؛ هو ماسيظهر على الرمز، سوف نقوم بإدراج الرمز عن طريق وظيفة أخرى.. colorDark: يحمل قيمة اللون الغامق في الرمز؛ يراعى في هذا مقاييس HTML في تعريف الألوان.. colorLight: يحمل قيمة اللون الفاتح في الرمز؛..... width: يحمل قيمة رقمية تمثل عرض الرمز height: يحمل قيمة رقمية بالبكسل تمثل طول الرمز !! يجب أن تكون قيم الطول والعرض متساوية. أكبر قيمة هي 256 بكسل !! جميع هذه الخصائص اختيارية إلا أنها تحمل قيم افتراضية.. ؟؟ كيف استدعي المتغير وأمرر إلىه القيم، وأين أضعه المتغير Xqrcode الذي سبق وأن أعلنا عنه يمثل المكون الأبوي لتابعين هما Xqrcode.makeCode(var) // له معامل نصي واحد يمثل البيانات التي ستظهر في الرمز Xqrcode.clear() // يقوم بمحو البيانات السابقة // يتم استدعائها بالطريقة التالية // من داخل النموذح WD.script.Xqrcode.makeCode(var) // من خارج النموذج WF.WD.script.Xqrcode.makeCode() // WF غرض يمثل النموذج // WD غرض يمثل صفحةويب يمكن أن تضعه في أي مكان من النموذج. بالنسبة لي وضعته في حدث السجل الحالي.. !! لتكن على علم أن جافا سكربت حساس لحالة الأحرف..