top of page

Ways to Open another Form in IEE Client in IFS [SessionNavigate,

Writer's picture: Rumesh Aponso (RMAX)Rumesh Aponso (RMAX)

Via SessionNavigate

  1. Setup data transfer object [Optional Step]

  2. Call ‘SessionNavigate’ method and pass form/window name


SalArray<SalString> sArray = new SalArray<SalString>();
SalArray<SalWindowHandle> hWndArray = new SalArray<SalWindowHandle>();

sArray[0] = "EMP_NO";
hWndArray[0] = this.colsEmpNo;
	
sArray[1] = "COMPANY_ID";
hWndArray[1] = this.colsCompanyId;

Ifs.Fnd.ApplicationForms.Var.DataTransfer.Init("CompanyPerson", Sys.hWndForm, sArray, hWndArray);
SessionNavigate("frmTabCompanyPers");

How to catch DATA TRANSFER

public override SalNumber vrtActivate(fcURL URL)
{
	#region Local Variables
	SalArray<SalString> sQuotationNo = new SalArray<SalString>();
	SalString sWhere = "";
	#endregion

	#region Actions
	using (new SalContext(this))
	{
		if (Ifs.Fnd.ApplicationForms.Var.DataTransfer.SourceNameGet() == "OrderQuotation")
		{
			Sal.WaitCursor(true);
			Ifs.Fnd.ApplicationForms.Var.DataTransfer.ItemGet("QUOTATION_NO", sQuotationNo);
			sWhere = "QUOTATION_NO = '" + sQuotationNo[0] + "'";
			Sal.SendMsg(frmCalculatedSalesPromotionDealQuotation.FromHandle(i_hWndFrame).tblTopTable, Ifs.Fnd.ApplicationForms.Const.PM_DataSourceUserWhere, Ifs.Fnd.ApplicationForms.Const.METHOD_Execute, sWhere.ToHandle());
			Sal.SendMsg(frmCalculatedSalesPromotionDealQuotation.FromHandle(i_hWndFrame).tblTopTable, Ifs.Fnd.ApplicationForms.Const.PM_DataSourcePopulate, Ifs.Fnd.ApplicationForms.Const.METHOD_Execute, 0);
			Sal.SendMsg(frmCalculatedSalesPromotionDealQuotation.FromHandle(i_hWndFrame).tblBottomTable, Ifs.Fnd.ApplicationForms.Const.PM_DataSourcePopulate, Ifs.Fnd.ApplicationForms.Const.METHOD_Execute, Ifs.Fnd.ApplicationForms.Const.POPULATE_KeepFocus);

			Ifs.Fnd.ApplicationForms.Var.DataTransfer.Reset();
			Sal.WaitCursor(false);
		}
		Sal.WaitCursor(false);
	}
	return base.Activate(URL);
	#endregion
}

Via DataSourceCreateWindow Message

  1. Call ‘PM_DataSourceCreateWindow’ in a ‘Sal.SendMsg’

Sal.SendMsg(Sys.hWndForm, Ifs.Fnd.ApplicationForms.Const.PM_DataSourceCreateWindow, Ifs.Fnd.ApplicationForms.Const.METHOD_Execute, ((SalString)"frmTabCompanyPers").ToHandle());


Ifs.Fnd.ApplicationForms.Int.PostMessage(this, Ifs.Fnd.ApplicationForms.Const.PM_DataSourceCreateWindow, Ifs.Fnd.ApplicationForms.Const.METHOD_Execute, Pal.GetActiveInstanceName("frmShipment"));

Via URL

  1. Setup data transfer object [Optional Step]

  2. Construct a new URL

  3. Add required attributes [Optional Step]

  4. Set ‘ProgId’ to the form/window name

  5. Then call ‘Go()’ of the URL

sGlobalCompany = this.colsCompanyId.Text;
SalString sURL = Sal.NumberToHString(i_hWndFrame.SendMessage(Ifs.Fnd.ApplicationForms.Const.PM_DataSourceConstructBaseURL, 0, 0));
if (sURL != Ifs.Fnd.ApplicationForms.Const.strNULL)
{
	fcURL URL = new fcURL(sURL);
	URL.iParameters.SetAttribute("COMPANY", sGlobalCompany);
	URL.SetProgId("frmTabCompanyPers");
	URL.Go();
}

Navigate to Feature Form (ifswin)

private void menuFrmMethods_menuDE03799_Test_Execute(object sender, FndCommandExecuteEventArgs e)
{
   iURL.SetProtocol("ifswin");
   iURL.SetProgId("Ifs.Application.QuickReporting.QuickReportDetail");
   iURL.iParameters.SetAttribute("action", "get");
   iURL.iParameters.SetAttribute("key1", "528701");
   iURL.Go();
}

Related Link:


5 views0 comments

Related Posts

See All

Fnd Dynamic Tab Page in IEE Client

[FndWindowRegistration("YVVDA_COMPANY_ADDR", "YvvdaCompanyAddr", FndWindowRegistrationFlags.HomePage)] [FndDynamicTabPage("frmCompanyAddr...

LISTAGG in PLSQL

Example 1: SELECT DISTINCT LISTAGG(t.commission_receiver, ';') WITHIN GROUP (ORDER BY t.commission_receiver) FROM...

Get Foundation Error from ORA Error

FUNCTION Strip_Ora_Error ( sqlerrm_        IN VARCHAR2,    sqlcode_        IN NUMBER DEFAULT NULL,    strip_ora_only_ IN BOOLEAN DEFAULT...

Comments


Copyright © 2025 RMAXOneNote

  • Online CV
  • LinkedIn
  • Youtube
  • GitHub
  • Blogger
bottom of page