S.Kuskov, Благодарю за ответы. Книгу прочитал и прояснил для себя некоторые аспекты. Поискал и вроде бы понял как работает DynaLink, и Menuitem, весь кусок кода для открытия формы и передачи параметров уложился 5-10 кликов мышью. Теперь возник вопрос по поводу разноски: Как мне передать параметр разноски во вторую форму чтобы уже в зависимости от значения таблицы можно было выставлять свойство allowedit true или false.
Научился передавать параметры в обычной кнопке
Для нажатия
X++:
void clicked()
{
FormRun form1;
Jurnal tabl;
Args args = new Args("Form2");
super();
args.lookupField(Jurnal.Jurnal_number);
args.lookupValue(int2str(tabl.Jurnal_number));
if (Jurnal.Raznos == Raznos::No)
{
args.parm("No");
}
if (Jurnal.Raznos == Raznos::Yes)
{
args.parm("Yes");
}
form1 = ClassFactory.formRunClass(args);
form1.init();
form1.run();
form1.wait();
}
Для приема параметра во второй форме
X++:
public void activate(boolean _active)
{
str _id;
Stroki tabl;
super(_active);
_id = element.args().parm();
if (_id == "Yes")
{
element.control(control::Grid).allowEdit(false);
}
else if (_id == "No")
{
element.control(control::Grid).allowEdit(true);
}
print (_id);
}
Надеюсь не замудренный код.
Так вот проблема, в обычной кнопке все передается на Ура, а вот через MenuItemButton похоже что другая история.
Посоветуете что читать или в какую сторону хоть идти в этом дремучем лесу?
Или можно каким-то образом встроить кусок своего кода, в код выполнения меню итем?
UPD: Только хотел уйти спать, как поиск по форуму дал результаты. В общем эта проблема тоже решена.
нашел ответ тут:
Передача параметра в Запрос(Query)
Остается научится выводить отчет и каким-то образом выводить правильное количество строк во второй форме по значениям в первой.