BQL 语法,包含 2 个 where 和多个 or

问题描述 投票:0回答:1

我想知道什么是好的语法:

public PXProcessing<ABONNEMENT,
  Where<ABONNEMENT.abodatenextgeneration, GreaterEqual<Current<aboFilter.usrdatedeb>>,
  And<ABONNEMENT.abodatenextgeneration, LessEqual<Current<aboFilter.usrdatefin>>,
  And<Where<Current<aboFilter.usrClient>, IsNull,
  Or<ABONNEMENT.aboclt, Equal<Current<aboFilter.usrClient>>>>>,
  And<Where<Current<aboFilter.usrAnalytique>,IsNull,Or<ABONNEMENT.aboanalytique, 
  Equal<Current<aboFilter.usrAnalytique>>>>>>>> AbonnementList;

1(与或)可以,但 2 不行。

   public PXProcessing<ABONNEMENT,
      Where<ABONNEMENT.abodatenextgeneration, GreaterEqual<Current<aboFilter.usrdatedeb>>,
      And<ABONNEMENT.abodatenextgeneration, LessEqual<Current<aboFilter.usrdatefin>>,
      And<Where<Current<aboFilter.usrClient>, IsNull,
      Or<ABONNEMENT.aboclt, Equal<Current<aboFilter.usrClient>>>>>>>> AbonnementList;
acumatica
1个回答
0
投票

您可以使用

Brackets<>
链接您的条件。

public PXProcessing<ABONNEMENT,
    Where<Brackets<ABONNEMENT.abodatenextgeneration, GreaterEqual<Current<aboFilter.usrdatedeb>>,
        And<ABONNEMENT.abodatenextgeneration, LessEqual<Current<aboFilter.usrdatefin>>,
            And<Where<Current<aboFilter.usrClient>, IsNull>,
                Or<Brackets<ABONNEMENT.aboclt, Equal<Current<aboFilter.usrClient>>>>>,
            And<Where<Current<aboFilter.usrAnalytique>,IsNull>,Or<ABONNEMENT.aboanalytique, 
                Equal<Current<aboFilter.usrAnalytique>>>>>>>> AbonnementList;
© www.soinside.com 2019 - 2024. All rights reserved.