Ich habe eine SO Order Entry-Anpassung, die ein Anerkanntes Kontrollkästchen für jede SO-Zeile während des Aktions-E-Mail-Verkaufsauftrags/Angebots festlegt. public CRActivityList Aktivität; öffentliche PXAction-Benachrichtigung; [PXUIField (Displayname = "Benachrichtigungen", Visible = false)] [PXButton (ImageKey = PX.Web.UI.Sprite.Main.DataEntryF)] geschützter virtueller IEnumerable-Mitteilung (PXAdapter Adapter, [PXString] String notificationCD ) { foreach (SOOrder Ordnung in adapter.Get()) { So aktualisieren Sie automatisch die SO-Bestelleintrags-Seite
var parameters = new Dictionary<string, string>();
parameters["SOOrder.OrderType"] = order.OrderType;
parameters["SOOrder.OrderNbr"] = order.OrderNbr;
Activity.SendNotification(ARNotificationSource.Customer, notificationCD, order.BranchID, parameters);
foreach (SOLine line in PXSelect<SOLine, Where<SOLine.orderNbr, Equal<Required<SOLine.orderNbr>>>>.Select(Base, order.OrderNbr))
{
SOLineExt rowExt = line.GetExtension<SOLineExt>();
rowExt.UsrAcknowledged = true;
Base.Transactions.Update(line);
//Base.Transactions.View.RequestRefresh();
// SOOrderEntry grp = PXGraph.CreateInstance<SOOrderEntry>();
// grp.Document.Search<SOOrder.orderNbr>(order.OrderNbr, order.OrderType);
}
yield return order;
}
}
Alles funktioniert wie erwartet, aber ich muss manuell aktualisieren Sie die Seite, um zu sehen, dass die Kontrollkästchen aktiviert sind. Beim manuellen Aktualisieren des Rasters werden nicht alle Überprüfungen korrekt angezeigt. Wie kann ich die Seite nach dem Prozess automatisch aktualisieren, sodass sie korrekt angezeigt wird?
Brebdan, Danke für die Antwort. Leider hat sich daran nichts geändert. Ich teste mit einer Bestellung, die drei Zeilen hat, und nach dem E-Mail-Prozess werden nach dem Zufallsprinzip 0-2 Zeilen angezeigt. Wenn Sie das Raster manuell aktualisieren, werden die gleichen Ergebnisse erzielt. Wenn Sie die gesamte Seite aktualisieren, werden alle Zeilen mit dem aktivierten Kontrollkästchen angezeigt. Mit den Pfeiltasten, um eine Bestellung zurückzugehen und dann zurück zu zeigen, werden alle aktivierten Kästchen angezeigt. – GeorgeM
Versuchen Sie Base.Document.Cache.Clear(); Alternativ habe ich Base.Actions.PressCancel() verwendet, um eine Seite zu aktualisieren. Könnte dies nach deinem PressSave versuchen. – Brendan
Brendan, Nochmals vielen Dank, aber keine Würfel. Ich denke, mein Problem ist, dass ich die Bestellung nicht aktualisieren kann, wenn ich in der Aktion bin. Ich werde einen Fall einreichen – GeorgeM