このプロセス画面: これはエラーをスローしますが、グリッドにエラーマークが表示されています。私は、グリッドが(赤い「X」マークで)このようになりたい プロセス]ボタンをクリックした後、それはちょうど私のレコードにチェックボックスのチェックを外しPXProcessing SetErrorがUIグリッドに表示されない
:
これは私のグラフです。 :
public PXCancel<PayrollFilter> Cancel;
public PXSetup<PayrollSetup> PayrollSetup;
public PXFilter<PayrollFilter> Filter;
[PXFilterable]
public PXFilteredProcessingJoin<PayrollEmployeeProcess, PayrollFilter,
InnerJoin<EPEmployee,
On<PayrollEmployee.employeeID, Equal<EPEmployee.bAccountID>>,
InnerJoin<Branch,
On<EPEmployee.parentBAccountID, Equal<Branch.bAccountID>>>>,
Where<PayrollEmployee.payPeriodID, Equal<Current<PayrollFilter.payPeriodID>>,
And<Branch.branchID, Equal<Current<AccessInfo.branchID>>>>> EmployeePayrollProcess;
#region Constructor
public PayrollProcess()
{
PayrollSetup setup = PayrollSetup.Current;
EmployeePayrollProcess.SetSelected<PayrollEmployeeProcess.selected>();
EmployeePayrollProcess.SetProcessDelegate(delegate (List<PayrollEmployeeProcess> employees)
{
if (Filter.Current == null) return;
var payPeriod = Filter.Current.PayPeriodID ?? 0;
var payrollPeriod = Filter.Current.PayrollPeriodID ?? 0;
if (payPeriod == 0 || payrollPeriod == 0) return;
PXLongOperation.StartOperation(this, delegate()
{
bool errorOccured = false;
foreach (PayrollEmployeeProcess employee in employees)
{
PayrollRegisterEntry graph = PXGraph.CreateInstance<PayrollRegisterEntry>();
try
{
graph.ProcessPayroll(employee, payPeriod, payrollPeriod);
PXProcessing<PayrollEmployeeProcess>.SetInfo("Employee processed");
}
catch (Exception ex)
{
errorOccured = true;
//employees.IndexOf(employee),
PXProcessing<PayrollEmployeeProcess>.SetError(ex);
}
finally
{
graph.Clear();
}
}
if (errorOccured) throw new PXException("At least one employee was not processed.");
});
});
// EmployeePayrollProcess.
}`
誰でも私を助けることができますか?私はAcumaticaを使用しています6
ありページに設定するいくつかのBATCHUPDATEことが、私かもしれません通常、プロセスページ上のレコードの処理では、以前は私のいくつかの問題を解決するのに役立つ処理呼び出しとして静的メソッドが呼び出されています。 – Brendan
グリッド設定でBatchUpdateを使用する必要がありますか?私はすでにSyncPositionの設定を –
に設定しています。処理ページの例では、常にリリースINのドキュメントを使用しています。 (ページIN501000 /グラフINDocumentRelease)。 BatchUpdate = "true"を使用します。このプロセスでは、ReleaseDocという静的メソッドが呼び出されます。同様のものを実装しようとする。静的呼び出しに渡されるオブジェクトにも問題があります。その処理のアイコンを表示するのはちょっと難しいですが、このグラフをあなたの例として使ってください。 – Brendan