mehdihadeli
5/23/2018 - 1:07 PM

Modal and return Response Rahkaran - Sert Result in Server

Work in WebComponentInitializer. dar Page 'ExecutionContext.Current.Executable' ghabele dastresi nist

  var returnValue = new TransportationVehicleChange
            {
                Happened = TransportationVehicleChanged,
                TransportationVehicleID = Assignment.TransportationVehicleRef,
                AssignmentID = Assignment.ID
            };
            SgWindow.Close(returnValue);
 SgWindow.ShowModalDialog<DSD.Operations.Web.Controls.ChangeAssignmentBrokerDialog>(queryString, "winChangeAssignmentBrokerDialog", null, null, "height:305,width:435,visibleStatusbar:false");
            ExecutionContext.Current.Executable.OnCallBack(() => 
            {
                var returnedValue =
                    ExecutionContext
                        .Current
                        .Executable
                        .Response
                        .Dialogs
                        .First();

                if (returnedValue != null)
                {
                    var transportationVehicleChange = null as TransportationVehicleChange;

                    try
                    {
                        var returnedValueJsonString = new JavaScriptSerializer().Serialize(returnedValue);
                        transportationVehicleChange = 
                            new JavaScriptSerializer()
                                .Deserialize<TransportationVehicleChange>(returnedValueJsonString);
                    }
                    catch {}

                    if ((transportationVehicleChange?.Happened).GetValueOrDefault() && 
                        transportationVehicleChange.TransportationVehicleID.HasValue)
                    {
                        var assignmentBiz = ServiceFactory.Create<IAssignmentBusiness>();
                        assignmentBiz
                            .RunAllocationOperation(
                                AllocationVarianceHandlerFactory.Create(),
                                WeighAndVolumeCheckHandlerFactory.Create(),
                                DsdDocumentCheckingPolicyHandlerFactory.Create(),
                                OperationExecutionMode.Allocation,
                                new[] { transportationVehicleChange.AssignmentID },
                                true, false, false);
                    }
                }
            });