اذهب الي المحتوي
أوفيسنا

نجوم المشاركات

  1. طارق محمود

    طارق محمود

    أوفيسنا


    • نقاط

      4

    • Posts

      4,520


  2. Foksh

    Foksh

    الخبراء


    • نقاط

      4

    • Posts

      1,495


  3. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      3

    • Posts

      11,717


  4. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      2

    • Posts

      9,755


Popular Content

Showing content with the highest reputation on 19 أبر, 2024 in all areas

  1. السلام عليكم مع خالص التقدير لأخونا أبو أحمد هذا حل آخر بلا أكواد فقط بالمعادلات فصل الارقام عن الاحرف.xlsx
    4 points
  2. السلام عليكم 🙂 علشان التقرير دائما يكون في نفس حجمه ، يجب استعمال الامر التالي عند فتح التقرير: Private Sub Report_Load() DoCmd.RunCommand acCmdZoom100 End Sub ومو لازم الرقم 100 ، فيمكنك استعمال اي من الارقام التالية: جعفر
    2 points
  3. أعتقد ان تناسق مكونات التقرير عند التحكم بتكبير وتصغير الإطار يعود الى عرض وضع الطباعة ، بينما في وضع عرض التقرير لا يتم إعادة تحجيم للمكونات كما في عرض الطباعة . أما فيما يخص العنوان ، فأعتقد انك تقدر تراجع هذا الموضوع 😉 لأخونا @طير البحر 🤪 والإستفادة منه .
    2 points
  4. عملت لك حل بالكود فصل الارقام عن الاحرف_01.xlsm
    2 points
  5. السلام عليكم ورحمة الله ’’ قمت بتصميم برنامج أكسس ومحتاج عند الضغط على الاسم تظهر صورة الشخص على البرنامج أو ينبثق منه شاشة بها بيانات الشخص وصورته تجريبي.rar
    1 point
  6. حفظك الله ورعاك وبارك فيك ان شاء الله اقوم بتجربته غدا ان شاء الله لك كل التحية مشكور
    1 point
  7. تفضل هذا برنامج جاهز وكبير ويلبي طلبك عدل عليه حسب حاجتك صورة ومعلومات.rar
    1 point
  8. السلام عليكم ورحمة الله وبركاتة لدي سوال كيف يعمل نظام اوفيس اكسس 2007 على نظام اوفيس 2019 ومافوق حيث عندي برنامج على قاعدة بيانات 2007 واريده ان يعمل على اوفيس 2019 او 2021
    1 point
  9. بحاول ارسله لك لانه حجمه كبير وبشوف لك اليوم كيف اسوي فيه جزاك الله خير
    1 point
  10. ارفق ملفك أخي الكريم .
    1 point
  11. ومشاركة مع أساتذتي ، لتقريب الأرقام لأقرب عدد صحيح إذا كان الجزء الكسري = أو أكبر أو أصغر من 0.5 Function RoundFoksh(Number As Double) As Integer If Number - Int(Number) >= 0.5 Then RoundFoksh = Int(Number) + 1 Else RoundFoksh = Int(Number) End If End Function ولاستدعاء الدالة كالآتي :- RoundFoksh(5.4) ' ستكون القيمة 5 RoundFoksh(5.5) ' ستكون القيمة 6 RoundFoksh(9.44) ' ستكون القيمة 9 RoundFoksh(9.55) ' ستكون القيمة 10
    1 point
  12. دالة Round تقرب الأعداد الفردية للأعلى والزوجية للأسفل مثال: 1.2 > 1 1.5 >2 1.9 > 2 2.2 > 2 2.5 >2 2.9 >3 ----------------------------------------------------- ولجعل هذه الدالة ترفع دائما للأعلى نستخدم الصيغة التالية : -Int(-Number) حيث Number هو الرقم أو الحقل المطلوب 1.2 > 2 1.5 >2 1.9 > 2 2.2 > 3 2.5 >3 2.9 >3 ------------------------------------------------- دالة Int تقرب للأسفل مثال: 1.2 > 1 1.5 >1 1.9 > 1 2.2 > 2 2.5 >2 2.9 >2 ------------------------------------------------- دالة Fix تقرب للرقم الأقرب للصفر بمعنى الأعداد الموجبة تنزلها والسالبها ترفعها مثال: 1.2 > 1 1.5 >1 1.9 > 1 2.2 > 2 2.5 >2 2.9 >2 -1.2 > -1 -1.5 >-1 -1.9 > -1 -2.2 > -2 -2.5 >-2 -2.9 >-2 ------------------------------------------------- دالة Fix تقرب للرقم الأقرب للصفر بمعنى الأعداد الموجبة تنزلها والسالبها ترفعها مثال: 1.2 > 1 1.5 >1 1.9 > 1 2.2 > 2 2.5 >2 2.9 >2 -1.2 > -1 -1.5 >-1 -1.9 > -1 -2.2 > -2 -2.5 >-2 -2.9 >-2
    1 point
  13. اخي الحل اوقف على القاعدة اكبس كليك يمين ثم خصائص اخر شيء من اسفل تجد فك التجميد تضع صح وتكبس اوكي وتفتح الملف عادي
    1 point
  14. لا كوارث ولا اي شيء اذا اخذت بالاحتياط ولكن التقصير منك خذ مني كيف اسير في عملي 1- احذف اي شيء لا فائدة منه اول بأول .. مثل استعلامات الفحص والتجربة .. والجداول التي الغيت العمل بها .. وينطبق هذا على النماذج والتقارير وكما ذكرت لك اول بأول 2- بعد كل عمل مهم اخذ مني وقتا وجهدا اقوم باخذ نسخة احتياطية تكون في مجلد بعيدا واعطيها رقما متسلسلا .. للرجوع اليها عند الضرورة تصور عند نهاية المشروع ان مجلد النسخ الاحتياطية يحتوي على العشرات لا تعجب اذا قلت ان الرقم قد يصل الى 100 ... وغالبا النسخة الأخيرة هي المهمة 3- احيانا اشعر ان قاعدة البيانات انهكت واصابها الاجهاد .. هنا اصدر كل ما تحتويه الى قاعدة بيانات جديدة
    1 point
  15. اول علاج افتح قاعدة بيانات جديدة ثم اجلب اليها جميع الموجود في القاعدة القديمة اذا صلح الحال وإلا فيجب تتبع الخلل عادة لا يظهر الخلل عند استخدامك سطر القفز على الأخطاء في المحرر
    1 point
  16. السلام عليكم ورحمة الله أخي طارق لك وحشة... إن شاء الله تكون بخير وعافية... وهذه محاولة في الملف المرفق... 555.xlsx
    1 point
  17. السلام عليكم ورحمة الله وبركاته التطبيق اهداء الى منتدانا الحبيب ورواد المنتدى العمل حتى يخرج بهذه الصورة يعلم الله وحده الجهد المبذول به اسال الله تعالى ان يتقبل هذا العمل صدقة جارية الى ما شاء الله تعالى ms access becomes an authorized e-invoicing solution provider in Saudi Arabia by www.officena.net Start your e-invoicing journey حسب متطلبات هيئة الزكاة والضريبة والجمارك السعودية يتم قراءة الرمز الناتج ان شاء الله عبر القارىء الرسمي الخاص بالهيئة ( تطبيق جوال ) حمل من هنا : التطبيق الرسمي لهيئة الزكاة والضريبة والجمارك يتم قراءة الرمز الناتج ان شاء الله عبر قارىء خاص ( تطبيق جوال ) حمل من هنا : تطبيق قرائة رمز الاستجابة طبقات لمتطلبات هيئة الزكاة والضريبة والجمارك التطبيق المقدم لكم تمت تجربته وهو متوافق مع النواتين 32 , 64 تم تصميم الاكواد داخل روتين عام ليسهل التعامل معها بكل سهولة ممكنة حاولت جاهدا جمع الاكواد المستخدمة فى موديول ليسهل نقله يتم التعامل مع الروتين باسناد فقط اسماء الحقول من النموذج المستخدم والتى يمكن تغير اسمائها تبعا لتصميمك كالاتى Call CreateInvoice(ID, SellerName, VatNo, TimeStamp, InvoiceWithVat, VatTotal) ID >>-----> اسم الحقل الدال على رقم الفاتورة وهذا ليتم تسمية ملف رمز الاستجابة الناتج بناء عليه SellerName >>-----> اسم الحقل الدال على اسم البائع VatNo >>-----> اسم الحقل الدال على الرقم الضريبي TimeStamp >>-----> اسم الحقل الدال على الوقت وتاريخ انشاء الفاتورة InvoiceWithVat >>-----> اسم الحقل الدال على القيمة الاجمالية للفاتورة VatTotal >>-----> اسم الحقل الدال على القيمة الاجمالية لمبلغ الضريبة فقط بعد تشفير البيانات يتم اسناد الشفرة الى متغير عام باسمstrHashCode والذى من خلاله يت حفظ البيانات المشفرة داخل الجدول تبعا لكل سجل ---------------------------------------------- الية العمل بعد اسناد اسماء الحقول الى الروتين يتم تمرير البيانات من تلك الحقول الى الملف التنفيذى الملحق مع القاعدة والذى بدورة يقوم بانشاء كل من 1- رمز الاستجابة السريع بعد تشفير البيانات طبقا للمطلبات from string to hex to base64 2- انشاء ملف نص به تشفير البيانات بعد ذلك تقوم باقى الاكواد بجلب البيانات المشفرة من ملف النص واسنادها الى المتغير الذى تم تخصيصه لذلك --------------------------------------------- تفاصيل الاكواد داخل الموديول كالتالى الروتين MkDir لعمل المجلدات عند الحاجة دوال الـ API الخاصة بـ ShellWait والمتوافقة مع كلتا النواتان 32 , 64 وتمت التجربة بنجاح على اوفيس 32 تارة واوفيس 64 تارة اخرى بفضل الله بنجاح حيث يتم ارسال البيانات من الحقول الى الملف التنفيذى الملحق من خلال الروتين Shell_n_Wait ليتم انشاء رمز الاستجابة السريع من خلال الروتين الخاص به وهو CreateInvoice وانشاء الملف النصى بجوار الملف التنفيذى فى نفس المسار لالحاق البيانات المشفرة طبقا للمطلبات from string to hex to base64 وبعد ذلك يتم جلب البيانات المشفرة من خلال الروتين ReadFileToText ولابد من استخلاص التشفير من خلال الروتين StripSpChars للاحتفاظ بالنص دون اى زيادات وبعد ذلك يتم الحاق البيانات المشفرة الى المتغير الذى قمت بتخصيصه لذلك وهو يحمل الاسم strHashCode والذى يتم الحاق البيانات من خلاله لكل سجل الى الحقل المخصص به للاحتفاظ بتلك الشفرة حسب طلبات السادة رواد المنتدى الكرام الملف التنفيذى تم عمله من خلال الفيجوال دوت نت ليقوم بتحويل النص طبقا للمطلبات from string to hex to base64 وتم دمج ملفات الـ Dll الخاصة بانشاء رمز الاستجابة بداخل الملف التنفيذى لسهولة التعامل معه من خلال الاكسس ليكون ملف تنفيذى واحد فقط يتم التعامل معه من خلال الـ Command Line دون الحاجة لتثبيت او تسجيل او الاستعانة بأى مكتبات خارجية او حتى ملحقة بالاكسس وذلك لسهولة نقل الموديول الى اى قاعدة دون التقيد باى مكتبات --------------------------------------------- تنبيه هام جدا جدا جدا بجوار قاعدة البيانات فى نفس مسارها مجلد باسم KSA-QR-Tool لايمكن تغيير اسم المجلد والا يحدث خلل وان استدعت الحاجة تغيير الاسم يجب ذلك داخل المدويول يتم كذلك انشاء ملف نصى اليا داخل المجلد KSA-QR-Tool لذلك يجب تحرى الحذر عند محاولة تغيير اسم المجلد داخل الموديول لذلك يرجى عدم محاولة تغير اسم المجلد كذلك داخل المجلد السابق ذكرة الملف التنفيذى KSAQR.exe لا تحاول تغيير اسم الملف لان الاكواد كذلك تتعامل مع هذا الملف من خلال اسمه كذلك لا يمكن نقل المجلد او الملف من مسار قاعدة البيانات الا بالتعديل على الاكواد وفى الختام فضلا وكرما وليس امرا الرجاء الاهتمام بالرد بما يفيد نتيجة تجربتكم الشخصية وتقييم تلك التجربة فلا تبخلوا علينا بذلك... لكم منا خالص الشكر واتمنى لكم تجربة ممتعة ومن يريد طريقتى والتى احبها وافضلها وتعلمتها من استاذى الجليل ومعلمى الجليل الاستاذ @jjafferr بتحميل الملف التنفيذى داخل القاعدة للتأكد دائما من عدم حذفه لا يتردد فى طلب ذلك فقط حاولت تقديم القاعدة بأبسط شكل حتى يقف كل من يريد استخدامها او نقلها الى تطبيقه الخاص على الاكواد المهمة فقط من خلال موديول واحد فقط تيسيرا وتسهيلا عليه وحتى تعم الفائدة هذه الاكواد المستخدمة فى الملف التنفيذى الذى تم انشاؤه من خلال الـ فيجوال دوت نت بناء على رغبة استاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @ابوخليل لمن يريد التعلم من اكواد التشفير وبناء على طلب استاذى القدير @ابوآمنة Imports System.Drawing Imports System.IO Imports System.Text Imports QRCoder Module Module1 Sub Main() Try Dim sellerName As String = "" Dim vatNumber As String = "" Dim timeStamp As String = "" Dim invoiceTotal As String = "" Dim vatTotal As String = "" Dim imagePath As String = "" Dim filePath As String = "" If My.Application.CommandLineArgs.Count >= 6 Then sellerName = My.Application.CommandLineArgs(0) vatNumber = My.Application.CommandLineArgs(1) timeStamp = My.Application.CommandLineArgs(2) invoiceTotal = My.Application.CommandLineArgs(3) vatTotal = My.Application.CommandLineArgs(4) imagePath = My.Application.CommandLineArgs(5) filePath = My.Application.CommandLineArgs(6) Else Environment.Exit(0) End If If Not String.IsNullOrEmpty(filePath) Then File.WriteAllText(filePath, String.Join(" ", sellerName, vatNumber, timeStamp, invoiceTotal, vatTotal), Encoding.UTF8) End If End Dim tlvInvoice = CreateInvoice(sellerName, vatNumber, timeStamp, invoiceTotal, vatTotal) Dim qrGenerator As New QRCodeGenerator() Dim qrData As QRCodeData = qrGenerator.CreateQrCode(tlvInvoice, QRCodeGenerator.ECCLevel.Q) Dim qrCode As QRCode = New QRCode(qrData) Dim qrCodeImage As Bitmap = qrCode.GetGraphic(20) qrCodeImage.Save(imagePath) If Not String.IsNullOrEmpty(filePath) Then File.WriteAllText(filePath, tlvInvoice, Encoding.UTF8) End If Catch ex As Exception End Try End Sub Function CreateInvoice(sellerName As String, vatNumber As String, timeStamp As String, invoiceTotal As String, vatTotal As String) As String Dim invoiceHex As String = "" For i = 1 To 5 Dim txt As String = "" Select Case i Case 1 txt = sellerName Case 2 txt = vatNumber Case 3 txt = timeStamp Case 4 txt = invoiceTotal Case 5 txt = vatTotal End Select Dim hexTxt As String = StringToHex(txt) Dim hexLen As String = Hex(Encoding.UTF8.GetBytes(txt).Length) If hexLen.Length = 1 Then hexLen = "0" & hexLen End If invoiceHex = invoiceHex & "0" & i & hexLen & hexTxt Next Return HexToBase64(invoiceHex) End Function Function StringToHex(txt As String) As String Dim b As Byte() = Encoding.UTF8.GetBytes(txt) Return BitConverter.ToString(b).Replace("-", "") End Function Function HexToBase64(txt As String) As String Dim bytes = New Byte((txt.Length \ 2) - 1) {} For i = 0 To bytes.Length - 1 Dim mi = txt.Substring(i * 2, 2) bytes(i) = Convert.ToByte(mi, 16) Next i Return Convert.ToBase64String(bytes) End Function End Module E-Invoicing.zip Ksa Qr 32x 64x 2007 to 2021 _Last Version.zip
    1 point
×
×
  • اضف...

Important Information