AXAPTA: كيف يمكن استخدام اسم الجدول ، وليس معرف الجدول ، كاختيار في مربع حوار تحديد تقرير سجل قاعدة البيانات؟

StackOverflow https://stackoverflow.com/questions/1366333

  •  21-09-2019
  •  | 
  •  

سؤال

حاليا فقط معرف الجدول يمكن استخدامه وهو لا معنى له لأنه رقم. القليل من مثال الكود سيكون رائعا حقا.

هل كانت مفيدة؟

المحلول

إنشاء جديد RunBaseReport الفصل وتذكر أن تسمي SysDatabaseLog تقرير في lastValueElementName طريقة.

تطور اسم الجدول في dialog طريقة؛ استخدم ال TableName نوع البيانات الممتد لتمكين البحث.

Object dialog() 
{
    DialogRunbase dlg = super();
    ;
    dialogTableName = dlg.addFieldValue(typeId(TableName),tableId2Name(tableId));      
    return dlg;  
}

قم بتحديث نطاق معرف الجدول من queryRun.query() في ال getFromDialog الطريقة بعد الاتصال super(). استخدم ال tableName2Id وظيفة للتحويل إلى معرف الجدول.

boolean getFromDialog()
{
    boolean ret = super();
    ;
    tableId = tableName2Id(dialogTableName.value());
    this.queryrun().dataSourceNo(1).findRange(fieldNum(SysDatabaseLog,Table)).value(queryValue(tableId));
    return ret;
}

في ال validate الطريقة ، التحقق من صحة اسم الجدول صالح (معرف الجدول ليس 0 ، الجدول وليس درجة الحرارة وما إلى ذلك).

أخيرًا ، يمكنك تغيير عنصر قائمة الإخراج للإشارة إلى الفصل بدلاً من التقرير.

تحذير: لم يتم اختبار الكود!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top