اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

  1. بن علية حاجي

    بن علية حاجي

    الخبراء


    • نقاط

      4

    • Posts

      4,335


  2. أحمد الحربي

    أحمد الحربي

    المشرفين السابقين


    • نقاط

      4

    • Posts

      135


  3. SEMO.Pa3x

    SEMO.Pa3x

    الخبراء


    • نقاط

      4

    • Posts

      535


  4. محمد طاهر عرفه

    محمد طاهر عرفه

    إدارة الموقع


    • نقاط

      2

    • Posts

      8,498


Popular Content

Showing content with the highest reputation on 08 يون, 2021 in all areas

  1. تفضل المطلوب... الثلاثي الثالث.xlsx
    2 points
  2. لا حاجة لـ AscW دعنا نستخدم الفنكشنات التي تم طرحها في موضوع الترجمة هنا: 'فنكشن فك التشفير Function DecodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String i = 2 Do While i < Len(s) Select Case Mid(s, i, 1) Case "0" To "7" r = r & Chr(CLng("&H" & Mid(s, i, 2))) Case "C", "D" p1 = CLng("&H" & Mid(s, i, 2)) - 192 i = i + 3 p2 = CLng("&H" & Mid(s, i, 2)) - 128 r = r & ChrW(64 * p1 + p2) Case Else ' Not handled End Select i = i + 3 Loop DecodeQP2 = r End Function 'فنكشن التشفير Function EncodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String Dim n As Long For i = 1 To Len(s) n = AscW(Mid(s, i, 1)) If n < 128 Then r = r & "%" & Hex(n) ElseIf n < 2048 Then p1 = n \ 64 r = r & "%" & Hex(p1 + 192) p2 = n Mod 64 r = r & "%" & Hex(p2 + 128) Else End If Next i EncodeQP2 = r End Function الـ Module في الأكسس: Option Compare Database Option Explicit '-------------------------------------------------------- 'c0ded bY : SEMO.Pa3x 'telegram : semo_pa4x 'facebook : https://www.facebook.com/Nisr.Aln3jaf 'last edit : 26/4/2019 '-------------------------------------------------------- Private Type SECURITY_ATTRIBUTES nLength As Long lpSecurityDescriptor As Long bInheritHandle As Long End Type Private Type PROCESS_INFORMATION hProcess As Long hThread As Long dwProcessId As Long dwThreadId As Long End Type Private Type STARTUPINFO cb As Long lpReserved As Long lpDesktop As Long lpTitle As Long dwX As Long dwY As Long dwXSize As Long dwYSize As Long dwXCountChars As Long dwYCountChars As Long dwFillAttribute As Long dwFlags As Long wShowWindow As Integer cbReserved2 As Integer lpReserved2 As Byte hStdInput As Long hStdOutput As Long hStdError As Long End Type Private Const WAIT_INFINITE As Long = (-1&) Private Const STARTF_USESHOWWINDOW As Long = &H1 Private Const STARTF_USESTDHANDLES As Long = &H100 Private Const SW_HIDE As Long = 0& Private Declare Function CreatePipe Lib "kernel32" (phReadPipe As Long, phWritePipe As Long, lpPipeAttributes As SECURITY_ATTRIBUTES, ByVal nSize As Long) As Long Private Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As Long, ByVal lpCommandLine As String, lpProcessAttributes As Any, lpThreadAttributes As Any, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long Private Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long Private Declare Sub GetStartupInfo Lib "kernel32" Alias "GetStartupInfoA" (lpStartupInfo As STARTUPINFO) Private Declare Function GetFileSize Lib "kernel32" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long Private Function Redirect(szBinaryPath As String, szCommandLn As String) As String Dim tSA_CreatePipe As SECURITY_ATTRIBUTES Dim tSA_CreateProcessPrc As SECURITY_ATTRIBUTES Dim tSA_CreateProcessThrd As SECURITY_ATTRIBUTES Dim tSA_CreateProcessPrcInfo As PROCESS_INFORMATION Dim tStartupInfo As STARTUPINFO Dim hRead As Long Dim hWrite As Long Dim bRead As Long Dim abytBuff() As Byte Dim lngResult As Long Dim szFullCommand As String Dim lngExitCode As Long Dim lngSizeOf As Long tSA_CreatePipe.nLength = Len(tSA_CreatePipe) tSA_CreatePipe.lpSecurityDescriptor = 0& tSA_CreatePipe.bInheritHandle = True tSA_CreateProcessPrc.nLength = Len(tSA_CreateProcessPrc) tSA_CreateProcessThrd.nLength = Len(tSA_CreateProcessThrd) If (CreatePipe(hRead, hWrite, tSA_CreatePipe, 0&) <> 0&) Then tStartupInfo.cb = Len(tStartupInfo) GetStartupInfo tStartupInfo With tStartupInfo .hStdOutput = hWrite .hStdError = hWrite .dwFlags = STARTF_USESHOWWINDOW Or STARTF_USESTDHANDLES .wShowWindow = SW_HIDE End With szFullCommand = """" & szBinaryPath & """" & " " & szCommandLn lngResult = CreateProcess(0&, szFullCommand, tSA_CreateProcessPrc, tSA_CreateProcessThrd, True, 0&, 0&, vbNullString, tStartupInfo, tSA_CreateProcessPrcInfo) If (lngResult <> 0&) Then lngResult = WaitForSingleObject(tSA_CreateProcessPrcInfo.hProcess, WAIT_INFINITE) lngSizeOf = GetFileSize(hRead, 0&) If (lngSizeOf > 0) Then ReDim abytBuff(lngSizeOf - 1) If ReadFile(hRead, abytBuff(0), UBound(abytBuff) + 1, bRead, ByVal 0&) Then Redirect = StrConv(abytBuff, vbUnicode) End If End If Call GetExitCodeProcess(tSA_CreateProcessPrcInfo.hProcess, lngExitCode) CloseHandle tSA_CreateProcessPrcInfo.hThread CloseHandle tSA_CreateProcessPrcInfo.hProcess If (lngExitCode <> 0&) Then Err.Raise vbObject + 1235&, "GetExitCodeProcess", "Non-zero Application exist code" CloseHandle hWrite CloseHandle hRead Else Err.Raise vbObject + 1236&, "CreateProcess", "CreateProcess Failed, Code: " & Err.LastDllError End If End If End Function Public Function MainRedirect(param As String) Dim resp As String resp = Redirect(CurrentProject.Path & "\" & "app.exe", EncodeQP2(param)) MainRedirect = DecodeQP2(resp) End Function Function DecodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String i = 2 Do While i < Len(s) Select Case Mid(s, i, 1) Case "0" To "7" r = r & Chr(CLng("&H" & Mid(s, i, 2))) Case "C", "D" p1 = CLng("&H" & Mid(s, i, 2)) - 192 i = i + 3 p2 = CLng("&H" & Mid(s, i, 2)) - 128 r = r & ChrW(64 * p1 + p2) Case Else ' Not handled End Select i = i + 3 Loop DecodeQP2 = r End Function Function EncodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String Dim n As Long For i = 1 To Len(s) n = AscW(Mid(s, i, 1)) If n < 128 Then r = r & "%" & Hex(n) ElseIf n < 2048 Then p1 = n \ 64 r = r & "%" & Hex(p1 + 192) p2 = n Mod 64 r = r & "%" & Hex(p2 + 128) Else End If Next i EncodeQP2 = r End Function الإستدعاء: Private Sub cmd_send_Click() MsgBox MainRedirect("السلام عليكم") End Sub لاحظ ان النص تم تشفيره وفكه في الـ Module وليس في الإستدعاء.. التطبيق المساعد بلغة NET. Module Module1 Sub Main() For Each arg As String In My.Application.CommandLineArgs Select Case DecodeQP2(arg) Case "السلام عليكم" Console.WriteLine(EncodeQP2("عليكم السلام ورحمة الله وبركاته")) Case "كيف حالك" Console.WriteLine(EncodeQP2("الحمدلله")) Case Else Console.WriteLine(EncodeQP2("لم تقم بإرسال سؤال")) End Select Next End Sub Function DecodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String i = 2 Do While i < Len(s) Select Case Mid(s, i, 1) Case "0" To "7" r = r & Chr(CLng("&H" & Mid(s, i, 2))) Case "C", "D" p1 = CLng("&H" & Mid(s, i, 2)) - 192 i = i + 3 p2 = CLng("&H" & Mid(s, i, 2)) - 128 r = r & ChrW(64 * p1 + p2) Case Else ' Not handled End Select i = i + 3 Loop DecodeQP2 = r End Function Function EncodeQP2(s As String) As String Dim i As Long Dim p1 As Long Dim p2 As Long Dim r As String Dim n As Long For i = 1 To Len(s) n = AscW(Mid(s, i, 1)) If n < 128 Then r = r & "%" & Hex(n) ElseIf n < 2048 Then p1 = n \ 64 r = r & "%" & Hex(p1 + 192) p2 = n Mod 64 r = r & "%" & Hex(p2 + 128) Else End If Next i EncodeQP2 = r End Function End Module النتيجة: تغلبنا على مشكلة اللغة العربية في الكونسول.. ملاحظة مهمة: أغلق الأنتي فايروس قبل التجربة لإن الدالة ( CreateProcessA ) يصنفها الأنتي فايروس كدالة مشبوهة لإنها تقوم بإنشاء عملية في النظام لمن يريد التجربة ارفقت لكم ملفات المشروع كاملة.. تحياتي لكم.. app.rar
    2 points
  3. حسناً، سأجيب على الأسئلة قدر استطاعتي وسيكون الشرح على Visual Studio .NET الـ SDK هو عبارة عن reference يتم اضافته لمشروع الـ NET. على هيئة ملف dll. كيف نقوم بإضافته لمشروعنا ؟ وسيصبح بجانب البرنامج عند عمل Compile أي إن البرنامج لن يعمل بدون هذه المكتبة. وهذه المكتبات التي قلنا انها ملفات dll. تكون مكتوبة حصراً بلغة NET. وهي عبارة عن classes / modules تمرر لها مدخلاتك تقوم هية بالفلترة وتعطيك المخرجات وانت بدورك ستقوم بإستقبالها بحسب اللغة المقابلة. حسناً، عمل الوسيط وإرسال المعلومات له ليس بالشيء الصعب لكن الصعب هو استلام البيانات من الوسيط.. أولا: نقوم بعمل الوسيط... سنقوم بعمل تطبيق وظيفته نرسل له عبارة معينة فيرد علينا بعبارة أخرى بلغة NET. Module Module1 Sub Main() For Each arg As String In My.Application.CommandLineArgs Select Case arg Case "hi" Console.WriteLine("Hi, How are you !") Case "how old are you" Console.WriteLine("i'm 25 years old") Case Else Console.WriteLine("ask me !") End Select Next End Sub End Module لاحظ الحلقة Select Case اذا قلنا Hi يجيبنا Hi, How are you ..الخ من باقي التخمينات في الحلقة. السطر الأهم هو Console.WriteLine هو سيقوم بكتابة الإجابة على الكونسول وسنقوم بقراءتها المشكلة ان الكونسول ( cmd.exe ) لا يدعم اللغة العربية ! ممكن نقوم بحل المشكلة بإستبدال الحروف العربية بإنكليزية مثال ( A = أ ) وسنقوم بالأكسس باستبدال الأنكليزي بالعربي وارجاع الحروف لإصلها اضن ان الفكرة وصلت.. ------------------------------------------------------------------------------------------- الآن مرحلة ارسال وإستقبال البيانات في الأكسس والطريقة الأفضل هي Windows API والدوال المطلوبة هي: CreatePipe CreateProcessA ReadFile CloseHandle WaitForSingleObject GetExitCodeProcess GetStartupInfo GetFileSize لتفاصيل أكثر، اضغط على إسم الدالة أرفقت لكم مصادر من MSDN Option Compare Database Option Explicit '-------------------------------------------------------- 'c0ded bY : SEMO.Pa3x 'telegram : semo_pa4x 'facebook : https://www.facebook.com/Nisr.Aln3jaf 'last edit : 26/4/2019 '-------------------------------------------------------- Private Type SECURITY_ATTRIBUTES nLength As Long lpSecurityDescriptor As Long bInheritHandle As Long End Type Private Type PROCESS_INFORMATION hProcess As Long hThread As Long dwProcessId As Long dwThreadId As Long End Type Private Type STARTUPINFO cb As Long lpReserved As Long lpDesktop As Long lpTitle As Long dwX As Long dwY As Long dwXSize As Long dwYSize As Long dwXCountChars As Long dwYCountChars As Long dwFillAttribute As Long dwFlags As Long wShowWindow As Integer cbReserved2 As Integer lpReserved2 As Byte hStdInput As Long hStdOutput As Long hStdError As Long End Type Private Const WAIT_INFINITE As Long = (-1&) Private Const STARTF_USESHOWWINDOW As Long = &H1 Private Const STARTF_USESTDHANDLES As Long = &H100 Private Const SW_HIDE As Long = 0& Private Declare Function CreatePipe Lib "kernel32" (phReadPipe As Long, phWritePipe As Long, lpPipeAttributes As SECURITY_ATTRIBUTES, ByVal nSize As Long) As Long Private Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As Long, ByVal lpCommandLine As String, lpProcessAttributes As Any, lpThreadAttributes As Any, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long Private Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long Private Declare Sub GetStartupInfo Lib "kernel32" Alias "GetStartupInfoA" (lpStartupInfo As STARTUPINFO) Private Declare Function GetFileSize Lib "kernel32" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long Private Function Redirect(szBinaryPath As String, szCommandLn As String) As String Dim tSA_CreatePipe As SECURITY_ATTRIBUTES Dim tSA_CreateProcessPrc As SECURITY_ATTRIBUTES Dim tSA_CreateProcessThrd As SECURITY_ATTRIBUTES Dim tSA_CreateProcessPrcInfo As PROCESS_INFORMATION Dim tStartupInfo As STARTUPINFO Dim hRead As Long Dim hWrite As Long Dim bRead As Long Dim abytBuff() As Byte Dim lngResult As Long Dim szFullCommand As String Dim lngExitCode As Long Dim lngSizeOf As Long tSA_CreatePipe.nLength = Len(tSA_CreatePipe) tSA_CreatePipe.lpSecurityDescriptor = 0& tSA_CreatePipe.bInheritHandle = True tSA_CreateProcessPrc.nLength = Len(tSA_CreateProcessPrc) tSA_CreateProcessThrd.nLength = Len(tSA_CreateProcessThrd) If (CreatePipe(hRead, hWrite, tSA_CreatePipe, 0&) <> 0&) Then tStartupInfo.cb = Len(tStartupInfo) GetStartupInfo tStartupInfo With tStartupInfo .hStdOutput = hWrite .hStdError = hWrite .dwFlags = STARTF_USESHOWWINDOW Or STARTF_USESTDHANDLES .wShowWindow = SW_HIDE End With szFullCommand = """" & szBinaryPath & """" & " " & szCommandLn lngResult = CreateProcess(0&, szFullCommand, tSA_CreateProcessPrc, tSA_CreateProcessThrd, True, 0&, 0&, vbNullString, tStartupInfo, tSA_CreateProcessPrcInfo) If (lngResult <> 0&) Then lngResult = WaitForSingleObject(tSA_CreateProcessPrcInfo.hProcess, WAIT_INFINITE) lngSizeOf = GetFileSize(hRead, 0&) If (lngSizeOf > 0) Then ReDim abytBuff(lngSizeOf - 1) If ReadFile(hRead, abytBuff(0), UBound(abytBuff) + 1, bRead, ByVal 0&) Then Redirect = StrConv(abytBuff, vbUnicode) End If End If Call GetExitCodeProcess(tSA_CreateProcessPrcInfo.hProcess, lngExitCode) CloseHandle tSA_CreateProcessPrcInfo.hThread CloseHandle tSA_CreateProcessPrcInfo.hProcess If (lngExitCode <> 0&) Then Err.Raise vbObject + 1235&, "GetExitCodeProcess", "Non-zero Application exist code" CloseHandle hWrite CloseHandle hRead Else Err.Raise vbObject + 1236&, "CreateProcess", "CreateProcess Failed, Code: " & Err.LastDllError End If End If End Function Public Function MainRedirect(param As String) Dim resp As String resp = Redirect(CurrentProject.Path & "\" & "app.exe", param) MainRedirect = resp End Function طبعاً app.exe هو اسم التطبيق الذي قمنا بعمله في الأعلى ووضعناه بجانب قاعدة بيانات الأكسس. الإستدعاء: Private Sub cmd_send_Click() MsgBox MainRedirect("hi") End Sub النتيجة: وأخيراً، استميحك عذراً في الإجابة عن هذا السؤال الموجه لأخي @د.كاف يار أغلب الطرق فاشلة وغير فعالة وهي بتحويل البرامج المكتوبة في الدوت نت الى مكتبات بصيغة tlb. لكن أؤكد لك انها طرق فاشلة وغير فعالة، هناك طريقة وجدتها سابقا وهي تحميل مكتبة دوت نت في لغات غير الدوت نت - Load vb.net to unmanaged process https://www.dev-point.com/vb/threads/389438 هذا هو الدرس، لمن يريد قراءته.. وأخيراً، ارجو ان اكون قد وفقت بإيصال الفكرة ولو بالشيء اليسير تحياتي لك يا مُعلمي @jjafferr
    2 points
  4. السلام عليكم تم استبدال الدالة COUNTIF بالدالة SUMPRODUCT في الملف المرفق... New Microsoft Excel Worksheet (2).xlsx
    2 points
  5. المعادلة للاستاذ نزار سليمان عيد والكود للسيد عبدالله باقشير خفظهما الله تم تحويل المعادلة الى كود لعدد الف صف تحياتي يومية.xlsb
    1 point
  6. الكود شغال معي بما انك لا تريد ارفاق ملف فلا تنتظر المساعدة ملاحظة اخيرة جرب وضعه في حدث afterupdate عليك الانتظار من الاساتذة الاخرين لتجد حل لمشكلتك بدون ملف
    1 point
  7. تفضل هذا المثال سيتم حفظ نسخة من المرفق لكي يتم عرضه داخل النموذج و في كل مرة يتم حذف هذه النسخة و انشاء نسخة جديدة Database2.accdb
    1 point
  8. وعليكم السلام-تفضل How To Print Sheet Name Or A List Of Sheet Names In Excel?
    1 point
  9. شكرا استاذ علي يعطيك العافية
    1 point
  10. وعليكم السلام-يمكنك استخدام هذه المعادلة =IF(G7-F7<0,0,G7-F7) سوال1.xlsx
    1 point
  11. 1 point
  12. جرب هذا وغير رقم التيكست بوكس لظهور التاريخ اكتب اول رقم وسيكمل باقي التاريخ Private Sub TextBox1_Change() Dim ldate As Date ldate = DateSerial(Year(Date), Month(Date), Day(Date)) TextBox1.Value = Format(TextBox1.Value, "yyyy/mm/dd") ldate = TextBox1.Value End Sub
    1 point
  13. انا استخدم كاسبرسكاي Kaspersky وما اعطاني اي خطأ 🙂 جميل جدا ، الدالة MainRedirect ربطت جميع مكونات المشروع ، ويتم وضع المتغيرات/Parameters والمسار للملف التنفيذي ، جميع هذا في سطر واحد 🙂 والملف التنفيذي app.exe () يأخذ/يرسل قيمة واحدة ، وبكل بساطة يمكن اعطائه اكثر من قيمة ، مثل رقم الشركة/المؤسسة/المدرسة واسم المستخدم وكلمة المرور/السر وووو ، ومن ثم يُرجع اكثر من قيمة (كمصفوفة مثلا) ومنها رقم الفاتورة الالكترونية 🙂 يعني الآن ادوات التواصل بين ملف Net. والاكسس اصبحت شبة جاهزة ، شكرا اخوي حسنين 🙂 ، ومربط الفرس (البرنامج) الآن في يدي اخونا حسين 🙂 (قد تستطيع عمل برويمج "تصغير برنامج 🙂" للمتغيرات المطلوبة لفريق الاكسس ، على ان تواصل برنامجك المتكامل بطريقة متوازية 🙂 ، خصوصا واننا المبرمجين نتعامل مع الكود كمرحلة اولى ، تاركين الواجهات واصطياد اخطاء ادخالات المستخدم كمرحلة تالية 🙂) جعفر
    1 point
  14. بارك الله فيكم ووفقكم وسدد خطاكم سادتي الكرام لكن الأستاذ بن عيلة حاجي من كانت إجابته مثل ما أريد شكرا جزيلا
    1 point
  15. طلبك ليس بالسهل او الهين ان يقوم اى شخص بتصميم كل ذلك لك .. فبما انك لم تقم بتصميم اليوزرفورم بنفسك .. فعليك بإستخدام خاصية البحث بالمنتدى فطلبك تكرر كثير وتم مناقشته داخل المنتدى عدة مرات ... وشكراً
    1 point
  16. جرب المعادلة =IF(E10=E2;IF(AND(A10>=18;B10<=25);(IF(AND(C10>=0;D10<=2);E3)));IF(E10=F2;IF(AND(A10>=18;B10<=25);(IF(AND(C10>=0;D10<=2);F3)));IF(E10=G2;IF(AND(A10>=18;B10<=25);(IF(AND(C10>=0;D10<=2);G3)))))) RANGE SALARY_.xlsx
    1 point
  17. همممم طبعا اذا عملت هذا ، فلا حاجة لك بالاجابات التي سنحصل عليها من هذه الموضوع 🙂 ولكني ارى اننا اصبحنا خطوة اقرب الى المطلوب ، طبعا للذين يريدون ان يستخدمون برنامجهم الاكسس للتخاطب مع موقع هيئة الزكاة والدخل 🙂 ممكن ان نرسل النتائج الى ملف txt ، ومنه الى نأخذ البيانات بالعربي ، او نعمل دالة تأخذ النتائج الحروف بصيغة AscW ومن ثم الى ChrW في برنامجنا 🙂 شكرا جزيلا اخوي حسنين على هذا الاسهاب في التوضيح ، ولا غنى لنا عنك في المستجدات هنا ، ان شاء الله 🙂 جعفر
    1 point
  18. السلام عليكم هو صحيح موجود رقم في الخلية ولكن يوجد خطأ بقراءة الرقم تم تحويل الخلية الى رقم وحضرتك لاحظت بوجود نقطة في زاوية الخلية هذا يعني بوجود خطأ بقراءة الرقم عند الوقوف على الخلية اضغط كلك ايمن راح يظهر تحويل الى رقم
    1 point
  19. بالمرفق نسخة "مفتوحة المصدر" تقبلوها كهدية . وأتمنى من الأخوة الزملاء المساهمة في تطوير البرنامج كل من لديه فكرة لا يبخل بها بل يضيفها لتعم الفائده للجميع . ولا تنسوني من دعائكم . وبالتوفيق TestM.rar
    1 point
  20. بسم الله الرحمن الرحيم تم اليوم افتتاح هذا القسم الجديد و هو مخصص لمشاريع الاكسيس فتطبيقات الأكسيس اما ملف أكسيس بامتداد mdb او مشروع أكسيس بامتداد adp Access Database Project و التي يتم فيها استخدام الأكسيس كواجهة للتطبيق بينما تخزين الملفات يكون فى إم إس إس كيو إل سيرفر أو النسخة المصغرة منه أي المحرك MSDE
    1 point
  21. يعتبر مشاريع أكسسAccess Data Projects (adp) قاعدة بيانات من نوع عميل/ملقم وتعني أن الواجهة في برنامج والداتا في برنامج آخر مما يمكنها وبجدارة من العمل على الشبكات .. ترتبط مشاريع أكسس بـالنسخة الكاملة من Ms sql server أو بالنسخة المصغرة منه msde ( سيكون الشرح على النسخة المصغرة هذه ) وبالنسبة لإصدار آكسس 2000 فإنه يرتبط بـ ms sql server7 أو بـ msde وأما إصدار آكسسxp فإنه يرتبط بـ ms sql server2000 أو بـ msde2000 يعتبر التدريب على msde قبل التدرب على النسخة الكاملة من sql server خطوة قوية لإتقان القاعدة الأم الكاملة ms sql server حين الارتباط بـ msde فإن حجم القاعدة لا يمكن أن يزيد عن 2 جيجا بايت تماماً مثل آكسس mdb سيكون أغلب الشروح هنا عن الارتباط من خلال msde إتقان مشاريع آكسس سيقودك إلى القواعد الكبيرة والعملاقة sql server حيث الأمان والأداء العاليين مشاريع أكسس تعتمد اعتماداً كلياً على مزودات OLE DB من خلال ADO القادرة إلى الوصول إلى المعطيات .. فهي لا تعتمد على jet ولا على DAO باستخدامك مشاريع أكسس سيقوم msde بالنيابة عنك بضغط قاعدة البيانات آلياً للحفاظ على المساحة المهدرة . قيام عدة مستخدمين بالدخول في وقت واحد دون أن يكون هناك ثقل على الشبكة لأن الاستعلامات ستنفذ هناك في الملقم وسيرسل النتائج عبر الشبكة فقط .. أما آكسس mdb فإن القاعدة سترسل الجدول بأكملها ولو بلغ ما بلغ من الحجم عبر الشبكة ويتم تصفيته على الجهاز العميل ومن ثم يعود أدراجه إلى القاعدة مما يبطيء الشبكة ويثقلها . ستتعلم من خلال مشاريع آكسس أشياء جديدة تختلف اختلافاً كلياً عن آكسس mdb وستلاحظ ذلك في الشاشة الرئيسية لمشاريع أكسس فمثلاً : 1- هناك ( طرق العرض ) وهذه لا يمكن فرز بياناتها وإنما عرض فقط 2- هناك ( رسم تخطيطي ) ويقابله في آكسس mdb العلاقات .. لكنه يقوم بمهام أكثر ويفوقه في أشياء كثيرة منها : أ- إمكان إنشاء اكثر من نافذة رسم تخطيطي للعلاقات مما يجعلك متحكماً أكثر في خطة بناء القاعدة ب- إمكانية إنشاء جدول جديد أو تعديل حقول جدول أو حذفها 3- هناك ( الإجراءات المخزنة ) وهي تشمل إلى عرض البيانات ( الإضافة والحذف والتحديث ) وهنا يمكنك فرز البيانات .. والحديث عنها يطول لعله يكون هناك درس كامل عنها فيما بعد إن شاء الله تعالى .. لأنها عصب البرنامج ولها مهام وأهداف عالية جداً .. في مشاريع أكسس : تخزن كل من ( الجداول ـ طرق العرض ـ الرسم التخطيطي ـ الإجراءات المخزنة ) في السيرفر أي في msde أو في Ms sql server بينما تخزن الكائنات الباقية ( النماذج ـ التقارير ـ الصفحات ـ الماكرو ـ الوحدات النمطية ) في ملف مشاريع أكسس ( كواجهة ).. تعتبر مشاريع آكسس في مقام (الواجهة) ( عميل ) ( زبون ) لـ ( ملقم ) ( سيرفر ) ( خادم ) هذه لمحة سريعة للتعريف بمشاريع أكسس وستكون هناك دروس بإذن الله حولها مع أطيب تحياتي
    1 point
  22. قبل البدء مع مشاريع آكسس adb لا بد من تنصيب الخادم ms sql server أو المحرك msde ولأننا سوف نتحدث عن msde فقط فسيكون التنصيب له .. SETUPmsde.zip
    1 point
  23. دعونا نبتعد قليلاً عن مشاريع أكسس لندخل في أعماق MSDE ونقلبه ظهراً لبطن ونستظهر مكوناته وأعماله . Msde من الداخل ملاحظة : سأتحدث عن msde 0.1 والتي تتفق مع أوفيس2000 لأنها هي التي عملت عليها وإلى الآن لم أعمل على msde2000 والتي تتفق مع أوفيس xp .. وأيضاً إلى الآن لم أعمل على النسخة الكاملة من MS Sql Server ونسأل الله أن يوفق في قادم الأيام . ملاحظة أخرى : من أجل تعلم MSDE خذ أي كتاب يتحدث عن Ms Sql Server فستجد فيه طريقة التعامل مع MSDE لأن المحرك هو المحرك . ------------- 1- مكونات msde في نافذة ms sql server manager ستجد الآتي : 1-1- server : وهو اسم الكمبوتر الذي تم تنصيب msde عليه وهو أيضاً اسم السيرفر . 1-2- Services : وستجد فيها ثلاثة خدمات هي : Mssqlserver وهذا الذي يهمنا الآن وكذلك sqlServerAgent وسنحتاجه فيما بعد لإنشاء الوظائف وتوقيتها كالنسخ الاحتياطي وكذلك distribut Transaction Coordinator وهذه لا أعلم عنها شيئاً الآن ------------- 2- تحت دليل(مجلد) msde : إذا اخترت الوضع الافتراضي ولم تغير اسم الدليل سيكون الدليل باسم MSSQL7 وتحتها المجلدات التالية : 2-1- BackUp : يخص ملفات النسخ الاحتياطي 2-2- Binn : يخص الملفات التنفيذية الخاصة بالمخدم والزبون . ملفات DLL وملفات المساعدة الفورية 2-3- Data : يخص ملفات المعطيات وملفات سجلات قاعدة البيانات 2-4- DevTools : ويحتوي على ملفين : أ- Incloude : ملفات الاحتواء الخاصة بـ OLEDB ب- Lib : ملفات مكتبة OLEDB 2-5- Install : الملفات النصية الخاصة بعملية التثبيت بالإضافة على ملفات الخرج التابعة لها والتي تم إنشاؤها أثناء فترة التثبيت . 2-6- JOBS : الوظائف(المهام) 2-7- LOG : ملفات سجلات الأخطاء 2-8- REPLDATA : الفهرس المخصص لعمليات النسخ من أجل الملفات المنسوخة ------------- 3- قواعد البيانات التي ينشئها أثناء التنصيب : يقوم msde بإنشاء أربعة قواعد بيانات أثناء التنصيب وهذه القواعد تسمى قواعد بيانات النظام ويحذر العبث بها أو حذفها لذا من الواجب وضع صلاحيات صارمة لدليل msde بالكامل وهذه القواعد هي : 3-1-Master : تسجل كل المعاملات المطلوبة لإدارة نظام msde بما في ذلك حسابات المستخدمين وقواعد البيانات المعرفة ضمن النظام ، وعمليات الملقم ، والقواعد المخزنة داخلها تسمى ( كتالوج النظام ) 3-2- model تستعمل كقالب عند إنشاء قواعد بيانات المستخدمين الجدد ، وتحتوي على الجداول التي تؤلف كتالوج قاعدة البيانات وهي الجداول التي يستعملها msde لتعريف الكائنات الأخرى ضمن قاعدة بيانات المستخدم . 3-3- msdb : يستعملها الخادم Sql Serve Agent لجدولة مواعيد المهام مهام الصيانة .. الخ 3-4- temdb : تستعمل كناحية تخزين مؤقت يحذف محتوياتها عند أيقاف sql server ------------- 4- تشغيل/أيقاف msde : يمكنك تشغيل msde عن طريق محث الأوامر أو ملف bat بالتعليمة التالية : من محث الأوامر اكتب net start mssqlserver أو أنشأ ملف بامتداد bat مثلاً باسم ( startSql.bat ) وضع فيه الجملة السابقة يمكنك كذلك إيقافه بالجملة التالية : net stop mssqlserver ------------- 5- إزالة msde : لا يمكن إزالة msde إلا بإيقافه ثم إنهائه من شريط المهام حتى تختفي أيقونته .
    1 point
  24. المثال موجود فى قسم التقارير http://www.officena.net/ib/index.php?showtopic=1222 حيث أنه به نفس الخاصية للتقارير و المثال من هنا http://www.officena.net/ib/index.php?act=A...pe=post&id=6315
    1 point
  25. أنواع البيانات في مشاريع آكسس Binary ---> (بيانا تثنائية) ثابت الطول .. الحد الأعظمي 8000 بايت .. يستخدم لتخزين الصور الصغيرة Varbinary ---> (بيانا تثنائية) متغير الطول .. الحد الأعظمي 8000 بايت Bit ---> يمتلك إحدى القيمتين (0) أو (1) وهو مكافيء لـ(نعم/لا)(صواب/خطأ) .. (1=نعم) (0=لا) Char ---> (أحرف)(نص) يمكن أن يزيد عن 8000 حرف .. ثابت الطول .. إذا حددت الطول بـ20 مثلاً وكان الحقل يحتوي على 5 أحرف سيتم ملء الفراغ المتبقي من الـ15خانة المتبقية هكذا : [المسجد ] Varchar ---> (أحرف)(نص) يمكن أن يزيد عن 8000 حرف .. بطول متحول حسب المدخل فيه .. فمثلاً إذا حددت طوله بـ20حرفاً وأدخلت 5 أحرف سحتوي على الخمس أحرف فقط من غير ملء 15 خانة المتبقية هكذا [المسجد] Datetime ---> قيمة محتملة تبدأ من يناير/1/1753 إلى 9999/31/ديسمبر Smalldatetime ---> (تاريخ/وقت) صغير Money ---> (عملة) Smallmoney ---> (عملة) أموال صغير .. يتم تحويل القيمة فيه إلى خانتين عشريتين فقط Nchar ---> يحتوي 4000 رمز يونيكود .. ثابت الطول يشغل حجماً يساوي 2 بايت لكل رمز Text ---> مكافيء لـ مذكرة Ntext ---> (ارتباط تشعبي ) بطول متحول (الارتباط غير مفعل) ويمكنك تفعيله باختيار (نعم)للخاصية(ارتباط تشعبي) في حقل في نموذج Decimal ---> (أرقام) عدد صحيح .. دقة ثابتة Numeric ---> (أرقام) مطابق لـdecimal Float ---> (أرقام) بفاصلة عائمة .. يحتوي على قيم تقريبية للقيمة الحقيقية .. مكافيء للنوع Double Int ---> (أرقام) قيم صحيحة .. مكافيء للنوع Long Integer Nvarchar ---> (أحرف)(نص)يونيكود Real ---> (أرقام)عدد حقيقي يحتوي أرقاماً ذات فاصلة عائمة سالبة أو موجبة .. يأخذ 7 خانات من أجل الدقة .. يحتوي على قيم تقريبية للقيمة الحقيقية . مكافيء للنوع Single Smallint ---> (أرقام) قيم صحيحة .. مكافيء للنوع Integer tinyint (أرقام) رقم صحيح يبدأ من صفر إلى 255 . يكافيء نوع بيانات Byte بايت timestamp ---> طابع الوقت .. عداد يتم تحديثه من قبل msde في كل مرة يتم فيها إدراج سجل أو تحديث سجل .. مكون من التاريخ والوقت الحالي .. ويستخدم حقل واحد فقط من هذا النوع في الجدول .. هذا الحقل للمقارنة ولا يمكن القراءة منه .. فيمكن مقارنة قيمتين منه لمعرفة آخر تحديث تم للصف منذ آخر قراءة له . Uniqueidentifie (GUID) ---> رقم فريد في ملقم msde Image صورة مكافيء للنوع (كائن OLE)
    1 point
  26. للتحميل مباشرة اضغط هنــــا مع تحياتي
    1 point
  27. بسمه تعالى تحية طيبة اخواني كلنا يعرف عندما ننقر نقر مزدوج على الساعة في شريط المهام لويندوز تظهر ساعة ذات عقارب تتحرك السؤال : هل من الممكن استدعاء هذه الساعة وادراجها في نموذج مثلا وكيف يتم ذلك للاهمية فقد شاهدت بعض المنظومات الاجنبية يقومون بذلك. مع الشكر مقدما
    1 point
  28. إخوتي الفاضل السلام عليكم ورحمة الله وبركاته كيف أكتب باستخدام if then هذه الجملة إذا كان نموذج mol1 مفتوح then ولكم مني جزيل الشكر
    1 point
  29. اريد أن أخذ Scan لنموذج كصورة و اضعه فى خلفية تقرير علي الاكسس الرجاء منكم المساعدة وتوضيح هذا الموضوع وذلك للضرورة القصوي وشكرا
    1 point
×
×
  • اضف...

Important Information