2016-11-16 2 views
0

einzuschließen Ich muss eine Verarbeitungsseite entwickeln. Allerdings möchte ich das Raster anhand einiger Attribute filtern. Nicht sicher, wie man das einbezieht. Kann jemand vorschlagen.Wie Bedingung in PXProcessingJoin für Where-Klausel

Hier ist der Code. ?? ist der Ort, an dem ich das Attribut wie CaseNo einfügen möchte.

[PXFilterable] 
 
     public PXProcessingJoin<CRCase, 
 
      LeftJoin<BAccount, On<CRCase.customerID, Equal<BAccount.bAccountID>>, 
 
      LeftJoin<CREmployee, On<CRCase.ownerID, Equal<CREmployee.userID>>, 
 
      LeftJoin<CSAnswers, On<CRCase.noteID, Equal<CSAnswers.refNoteID>>>>>, 
 
      Where<CRCase.majorStatus, NotEqual<CRCaseMajorStatusesAttribute.closed>, 
 
       And<CRCase.majorStatus, NotEqual<CRCaseMajorStatusesAttribute.released>, 
 
       And<CSAnswers.value, IsNotNull, 
 
       And<CSAnswers.attributeID, Equal<??>>>>>, 
 
      OrderBy<Desc<CRCase.caseCD>>> ProcessCase;

+0

Was meinst du mit 'einige Attribute'. Sind es hartcodierte Werte? Sind es Werte vom Filter? Ist es etwas anderes? –

+0

Es ist ein Hardcode-Werte. – Krunal

+0

In diesem Fall müssen Sie eine BQL-Konstante erstellen. –

Antwort

2

Try BQL konstant zu verwenden. Wie folgt aus:

public class decimal_100 : Constant<Decimal> 
{ 
    public decimal_100(): base(100m) 
    { } 
} 

Danach können Sie diese Konstante in der BQL verwenden, wie folgt aus:

PXSelect<ARInvoice, Where<ARInvoice.CuryOrigDocAmount, Equal<decimal_100>>> 

Bitte überprüfen T200 Trainingsbeispiel 3.1 für weitere Informationen. Sie können sich auch die Klasse ARDocType.invoice ansehen.