x++ code to add hyperlink to a field in D365FO
Here is a way to provide hyperlink for field.
1.Create an Extension class to the form as below.
[ExtensionOf(formStr(TestHistory))]
public final class TestHistoryForm_Extension
{
The same way we can override clicked method and other methods also.
1.Create an Extension class to the form as below.
[ExtensionOf(formStr(TestHistory))]
public final class TestHistoryForm_Extension
{
}
2.Copy onPostRun form eventhandler and write code as below.
[FormEventHandler(formStr(TestHistory), FormEventType::PostRun)]
public static void TestHistory_OnPostRun(xFormRun sender, FormEventArgs e)
{
FormStringControl formCtrl = sender.design().controlName(formControlStr(TestHistory,TestHistory_Voucher));
formCtrl .registerOverrideMethod(methodStr(FormStringControl, jumpRef), methodStr(TestHistoryForm_Extension, JumpRefId), sender);
}
3.write definition for JumpRefId method
public void jumpRefId(FormControl _formControl)
{
MenuFunction menuFunction;
Args args;
Voucher voucher;
TestTable testTable;
FormDataSource fds;
args = new Args();
fds = _formControl.dataSourceObject();
voucher = _formControl.valueStr();
testTable = TestTable::find(voucher);
args.record(testTable);
args.caller(fds.formRun());
args.menuItemName(menuitemDisplayStr(LedgerTransTestForm));
new menuFunction(menuItemDisplayStr(LedgerTransTestForm),MenuItemType::Display).run(args);
}
The same way we can override clicked method and other methods also.
Hope it helps.
Comments
Post a Comment