Ich habe eine PXLongOperation in meinem Code, ich finde keinen Weg, um zu wissen, ob der Benutzer den Vorgang abgebrochen hatte.So behandeln Sie die Stornierung von PXLongOperation
public PXAction<SomeFilter> someUpdate;
[PXButton(CommitChanges = true)]
[PXUIField(DisplayName = "Update")]
public void SomeUpdate()
{
if (this.Base.Filter.Current == null)
throw new PXException("Please choose val.");
PXLongOperation.StartOperation(this.Base,() =>
SomeOperation(this.Base.Filter.Current)
);
}
private void SomeOperation(SomeFilter filter)
{
//how to know user cancelled operation or not?
}
Wenn die Sorge verhindert, dass der Benutzer den Prozess, den Sie wieder zum Laufen kann nach der Verarbeitung suchen, die mit so etwas läuft ... PXLongOperation.GetStatus (Base.UID) == PXLongRunStatus.InProcess – Brendan
Ich muss innerhalb des Threads wissen, ob der Vorgang abgebrochen wird oder nicht. Gibt es eine Option wie das Stornierungs-Token in C#? – Hybridzz
Ich glaube, der Prozess sollte einfach abgebrochen werden, wenn der Benutzer auf Abbrechen klickt. Es ist möglicherweise nicht sofort, wenn der Benutzer auf Abbrechen klickt, aber irgendwann abbrechen sollte. – Brendan