Zooro1 قام بنشر يونيو 17 مشاركة قام بنشر يونيو 17 سؤال الأخوة الافاضل، هل يوجد لدي أحدكم قاعدة بيانات بسيطة فيها إظهار عدد المستخدمين اون لاين واسمائهم في الشاشة الرئيسية. زي مثلا عندي ١٠ مستخدمين، واللي فاتحين القاعدة الان ٥. يظهر في الشاشة الرئيسية ٥ مستخدمين عددهم والاسماء. اتمني اكون وصلت الفكرة... وشكرا رابط هذا التعليق شارك More sharing options...
Zooro1 قام بنشر يونيو 18 الكاتب مشاركة قام بنشر يونيو 18 الأساتذة المحترمين، في حد عنده اجابة او مثال رابط هذا التعليق شارك More sharing options...
Barna قام بنشر يونيو 18 مشاركة قام بنشر يونيو 18 17 ساعات مضت, Zooro1 said: سؤال الأخوة الافاضل، هل يوجد لدي أحدكم قاعدة بيانات بسيطة فيها إظهار عدد المستخدمين اون لاين واسمائهم في الشاشة الرئيسية. زي مثلا عندي ١٠ مستخدمين، واللي فاتحين القاعدة الان ٥. يظهر في الشاشة الرئيسية ٥ مستخدمين عددهم والاسماء. اتمني اكون وصلت الفكرة... وشكرا هل جربت استخدام خاصية البحث في المنتدى ...... هناك العديد من المواضيع المشابهة المطروحة سابقا 1 رابط هذا التعليق شارك More sharing options...
Zooro1 قام بنشر يونيو 18 الكاتب مشاركة قام بنشر يونيو 18 1 ساعه مضت, Barna said: هل جربت استخدام خاصية البحث في المنتدى ...... هناك العديد من المواضيع المشابهة المطروحة سابقا بحث والله ولكن لم اجد، يمكن بحثي غلط او شيء. اذا لديك لينك لموضوع اتمني تبعته رابط هذا التعليق شارك More sharing options...
Zooro1 قام بنشر يونيو 18 الكاتب مشاركة قام بنشر يونيو 18 الأخوة الافاضل، هل يوجد لديكم حلول... وشكرا رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يونيو 18 مشاركة قام بنشر يونيو 18 وعليكم السلام 🙂 تحصل على النتيجة التالية (لأني الوحيد اللي فاتح البرنامج، فلا ترى الا اسم كمبيوتري) : COMPUTER_NAME LOGIN_NAME CONNECTED SUSPECT_STATE myPC Admin True Null من الكود التالي: Function ShowUserRosterMultipleUsers_Jet_4() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Set cn = CurrentProject.Connection ' The user roster is exposed as a provider-specific schema rowset ' in the Jet 4.0 OLE DB provider. You have to use a GUID to ' reference the schema, as provider-specific schemas are not ' listed in ADO's type library for schema rowsets Set rs = cn.OpenSchema(adSchemaProviderSpecific, _ , "{947bb102-5d43-11d1-bdbf-00c04fb92675}") 'Output the list of all users in the current database. Debug.Print rs.Fields(0).Name, "", rs.Fields(1).Name, _ "", rs.Fields(2).Name, rs.Fields(3).Name While Not rs.EOF Debug.Print rs.Fields(0), rs.Fields(1), _ rs.Fields(2), rs.Fields(3) rs.MoveNext Wend rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing End Function . طريقة العمل: اعمل جدول فيه حقل Computer_Name ، واسم المستخدم ، والكود اعلاه يعطيك Computer_Name المتصل بقاعدة البيانات الان ، فمن ذي وذاك ، تتوصل الى معرفة اسم المستخدم اللي فاتح قاعدة البيانات الان 🙂 جعفر 1 رابط هذا التعليق شارك More sharing options...
Zooro1 قام بنشر يونيو 18 الكاتب مشاركة قام بنشر يونيو 18 10 دقائق مضت, jjafferr said: وعليكم السلام 🙂 تحصل على النتيجة التالية (لأني الوحيد اللي فاتح البرنامج، فلا ترى الا اسم كمبيوتري) : COMPUTER_NAME LOGIN_NAME CONNECTED SUSPECT_STATE myPC Admin True Null من الكود التالي: Function ShowUserRosterMultipleUsers_Jet_4() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Set cn = CurrentProject.Connection ' The user roster is exposed as a provider-specific schema rowset ' in the Jet 4.0 OLE DB provider. You have to use a GUID to ' reference the schema, as provider-specific schemas are not ' listed in ADO's type library for schema rowsets Set rs = cn.OpenSchema(adSchemaProviderSpecific, _ , "{947bb102-5d43-11d1-bdbf-00c04fb92675}") 'Output the list of all users in the current database. Debug.Print rs.Fields(0).Name, "", rs.Fields(1).Name, _ "", rs.Fields(2).Name, rs.Fields(3).Name While Not rs.EOF Debug.Print rs.Fields(0), rs.Fields(1), _ rs.Fields(2), rs.Fields(3) rs.MoveNext Wend rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing End Function . طريقة العمل: اعمل جدول فيه حقل Computer_Name ، واسم المستخدم ، والكود اعلاه يعطيك Computer_Name المتصل بقاعدة البيانات الان ، فمن ذي وذاك ، تتوصل الى معرفة اسم المستخدم اللي فاتح قاعدة البيانات الان 🙂 جعفر وهل ممكن يكون فيه نموذج مثلا اضغط عليه يطلع لي أسماء المستخدمين الحالين. واذا كان لديك مثال جدول وفيه الاكواد اكون شاكر ليك رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يونيو 18 مشاركة قام بنشر يونيو 18 38 دقائق مضت, jjafferr said: طريقة العمل: اعمل جدول فيه حقل Computer_Name ، واسم المستخدم ، والكود اعلاه يعطيك Computer_Name المتصل بقاعدة البيانات الان ، فمن ذي وذاك ، تتوصل الى معرفة اسم المستخدم اللي فاتح قاعدة البيانات الان 🙂 نعم ، اعمل الجدول ، والنموذج على اساس الجدول ، والباقي سهل ان شاء الله. ولا ما عندي عمل ممكن ارفقه. الخطوة اعلاه هي اساس العمل كله، والباقي خطوات سهله 🙂 جعفر 1 رابط هذا التعليق شارك More sharing options...
Barna قام بنشر يونيو 18 مشاركة قام بنشر يونيو 18 من باب اثراء الموضوع ومشاركة مع البرف @jjafferr لم اجرب الكود ولكن ضعه في زر النموذج واعلمنا بالنتيجة Dim ws As DAO.Workspace Dim db As DAO.Database Dim LDBFileName As String Dim FileNum As Integer Dim TmpStr As String Dim UserList As String Set ws = DBEngine.Workspaces(0) Set db = ws.Databases(0) LDBFileName = CurrentProject.Path & "\" & Left(CurrentProject.Name, (InStrRev(CurrentProject.Name, ".", -1, vbTextCompare) - 1)) & ".ldb" MsgBox LDBFileName FileNum = FreeFile() Open LDBFileName For Input As #FileNum Do While Not EOF(FileNum) Line Input #FileNum, TmpStr If TmpStr <> "" Then UserList = UserList & TmpStr & vbNewLine End If Loop Close #FileNum MsgBox "Current Users:" & vbNewLine & UserList 1 رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يونيو 19 مشاركة قام بنشر يونيو 19 همممم 11 ساعات مضت, Barna said: MsgBox "Current Users:" & vbNewLine & UserList يتم الاحتفاظ بـ Login_Name في ملف صلاحيات المستخدمين mdw. ، واللي كان يُستخدم في الاكسس 2003 فما قبل ، والموجود في في الاكسس 2007 فما فوق ولكنه ليس لاستخدام المستخدمين 🙂 لهذا السبب ، وعند استخدام الكود الذي عرضته انا (والذي لا يحتاج الى معرفة مكان هذا الملف ، ومن المعروف ان المسؤول بإمكانه عمل ملف mdw لكل برنامج حسب مستخدميه ، ويعيد تسمية الملف) ، او كود قراءة ملف ldb. (للاكسس 2003 فما قبل) او laccdb. (للاكسس 2007 فما فوق) الذي عرضته انت ، فالملف لا يوجد به اسماء المستخدمين ، وانما به قطعاً Computer_Name والذي ياخذه من الوندوز 🙂 جعفر 1 1 رابط هذا التعليق شارك More sharing options...
Barna قام بنشر يونيو 19 مشاركة قام بنشر يونيو 19 منذ ساعه, jjafferr said: يتم الاحتفاظ بـ Login_Name في ملف صلاحيات المستخدمين mdw. ، واللي كان يُستخدم في الاكسس 2003 فما قبل ، والموجود في في الاكسس 2007 فما فوق ولكنه ليس لاستخدام المستخدمين 🙂 لهذا السبب ، وعند استخدام الكود الذي عرضته انا (والذي لا يحتاج الى معرفة مكان هذا الملف ، ومن المعروف ان المسؤول بإمكانه عمل ملف mdw لكل برنامج حسب مستخدميه ، ويعيد تسمية الملف) ، او كود قراءة ملف ldb. (للاكسس 2003 فما قبل) او laccdb. (للاكسس 2007 فما فوق) الذي عرضته انت ، فالملف لا يوجد به اسماء المستخدمين ، وانما به قطعاً Computer_Name والذي ياخذه من الوندوز 🙂 بارك الله فيك بروف @jjafferr على المعلومات القيمة ونفع بك .. رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان