Passing information from a Kinetic form to a classic UD form

Hi All!

I’m trying to pass information from kinetic sales order entry to a classic form that was made before my time. Currently I’ve gotten it to open but it is blank as opposed to the classic to classic which opens correctly. Would this be as simple as adding parameters to app-open in application studio?

Classic Picture 1



I don’t know exactly how is your classic form working but if it is using LaunchFormOptions then I suggest you to read this topic. I hope you will find something useful there.
How To: Kinetic - Launch a Form using App Studio - Experts’ Corner - Epicor User Help Forum (epiusers.help)

Thank you, checking now!

It looks like the issue is with the classic customization Form_Load. It is erroring out but I’m not entirely sure what needs changed.

Screenshot 2024-10-11 111819

private void UD01Form_Load(object sender, EventArgs args)
{			
    string returnValue = Environment.GetEnvironmentVariable("ReturnValue", EnvironmentVariableTarget.Process);

    if (!string.IsNullOrEmpty(returnValue) && returnValue.Contains("~"))
    {
        string[] orderInfo = returnValue.Split('~');

        if (orderInfo.Length >= 4)
        {
            orderNum = Convert.ToInt32(orderInfo[0]);	
            orderLine = Convert.ToInt32(orderInfo[1]);	
            orderRelNum = Convert.ToInt32(orderInfo[2]);	
            autoReviewed = Convert.ToBoolean(orderInfo[3]);
            
            // Ensure controls are initialized before accessing
            if (cboLine != null && cboRelease != null && txtOrderDate != null && txtDueDate != null)
            {
                cboLine.Value = orderLine;
                cboRelease.Value = orderRelNum;
                txtOrderDate.ReadOnly = true;
                txtDueDate.ReadOnly = true;
            }

            Load_Rel();
            Load_Line();
            Load_SalesOrder(false);

            fillInitial();

            if (chkFinal != null && chkFinal.Checked.ToString() == "True")
            {						
                if (grdTasks != null)
                {
                    grdTasks.DisplayLayout.Override.AllowUpdate = DefaultableBoolean.False;
                }
                if (txtFinalApproval != null) txtFinalApproval.ReadOnly = true;
                if (txtFinalDate != null) txtFinalDate.ReadOnly = true;
                if (txtFinalDateTme != null) txtFinalDateTme.ReadOnly = true;					
            }					
        }
        else
        {
            // Handle error: not enough parts in returnValue
            // Set default values or log error
        }
    }
    // Optional else block to handle cases when returnValue is not set
    /*
    else
    {
        orderNum = 4199; //7750;
        orderLine = 4; //1;
        orderRelNum = 1;
        autoReviewed = false;
    }
    */}