Pivotal Input Dialog may be useful if you want to ask user some input parameters without creating a new client form.
I didn't find any documentation about how exactly to use Pivotal Input Dialog.
So I'm going to publish some code examples here how to use it.
Required dlls:
Pivotal.Engine.Client.Services.Interfaces.dll
Pivotal.Engine.UI.DataTypes.dll
// Get input dialog service IInputDialogService inputDialogService = ClientContext.ClientAPIService.GetService<IInputDialogService>(); DialogParam dialogParameter = new DialogParam(); dialogParameter.FormParams = new CdcSoftware.Pivotal.Engine.UI.DataTypes.FormParams.InputParamsCollection(); // 1. Foreign Key Table companyTable = this.SystemClient.UserProfile.GetMetaItem<Table>("Company"); InputParam foreignKeyInputParam = new InputParam() { Label = "Company", Type = InputParamType.RForeignField, IsRequired = true, Enums = companyTable.Id }; dialogParameter.FormParams.Add(foreignKeyInputParam); // 2. Single value fields: Date, Boolean, Integer, Double and etc InputParam dateInputParam = new InputParam() { Label = "Date", Type = InputParamType.Date }; dialogParameter.FormParams.Add(dateInputParam); InputParam boolInputParam = new InputParam() { Label = "Boolean", Type = InputParamType.Boolean }; dialogParameter.FormParams.Add(boolInputParam); InputParam intInputParam = new InputParam() { Label = "Integer", Type = InputParamType.Integer }; dialogParameter.FormParams.Add(intInputParam); // 2. Combo, ListBox object[] comboValues = new object[] { "value 1", "value 2" }; InputParam comboInputParam = new InputParam() { Label = "Date", Type = InputParamType.RCombo, Enums = comboValues }; dialogParameter.FormParams.Add(comboInputParam); // Set dialog type dialogParameter.DialogType = ModalDialogTypeEnum.modalDialogParamsAndDescription; // Show dialog inputDialogService.ShowDialog(dialogParameter, "Title"); // Get parameter values if (foreignKeyInputParam.Value != null) { Id companyId = Id.Create(foreignKeyInputParam.Value); } if (intInputParam.Value != null) { int intValue = TypeConvert.ToInt32(intInputParam.Value); }You can discover other input parameters types by yourself.