2016-04-26 7 views
0

ich einige Probleme zu berechnen ungebundenen Feld, möchte ich Wert erhalten von Raster durch Zeilenindex wie RowIndex Eigenschaft in C#, es von Acumatica verfügbar ist?Acumatica berechnen Unbound Feld

protected virtual void BSMTActivityTypePlanDetail_RowSelected(PXCache sender, PXRowSelectedEventArgs e) 
    { 
     if(e.Row == null) 
     { 
      return; 
     } 

     BSMTActivityTypePlan head = new BSMTActivityTypePlan(); 
     BSMTActivityTypePlanDetail detail = (BSMTActivityTypePlanDetail)e.Row; 

     for (int x = 0; x <= DetailActTypePlans.Select().RowCount; x++) 
     { 
      head.TotalPlanAct += DetailActTypePlans. 
     } 


    } 

Was könnte der richtige Weg sein, um dieses Problem zu lösen?

dank
+0

Es ist unklar, was Sie versuchen zu fragen? Könnten Sie Ihre Frage anders formulieren? – bit

+0

Hmmm, da das RowSelected-Ereignis immer nach der Ausführung der Ereigniskette ausgeführt wird, zum Beispiel: RowUpdated -> ... (Ich kann mich nicht genau erinnern, was nach RowUpdated ausgeführt wurde) -> RowSelected, FieldUpdated -> ..... -> RowSelected, sodass es zu einer schweren Auslastung oder falschen Berechnung kommen kann, wenn Sie das RowSelected-Ereignis eingeben. Wenn Ihr ungebundenes Feld nur zum ersten Mal berechnet wird, wenn die Zeile geladen wird, schlage ich vor, das RowSelecting zu verwenden, um diese Berechnung auszuführen – HDanh

+0

@HDanh: Danke für Ihren Vorschlag, kann ich Wert mit Zeilenindexeigenschaft erhalten? – Distor4by

Antwort

2

Finnaly Ich verwende PXDBScalar und es funktioniert auf ungebundenen Feld.

3

Ich sehe zwei Möglichkeiten, bei einer möglichen Lösung zu gelangen:

Die erste ist näher an, was Sie zu erreichen gewünscht hätten: „foreach“ statt „für“ zu verwenden:

foreach (DetailType detail in DetailView.Select()) 
{ 
    head.TotalPlanAct += detail.PlanActValue; 
} 

Die andere wäre, eine view mit einem Aggregat zu verwenden, so dass es Ihnen direkt den Gesamtwert zurückgeben würde, und Sie müssen Ihren Code nicht einschreiben, um es zu berechnen.

+0

Danke für Ihren Vorschlag – Distor4by

Verwandte Themen