=%+org/idempiere/test/base/LogicExpressionTest#org/idempiere/test/AbstractTestCase evaluatee>Lorg/idempiere/test/base/LogicExpressionTest$ContextEvaluatee;()VCode   LineNumberTableLocalVariableTable  this-Lorg/idempiere/test/base/LogicExpressionTest; testEqualRuntimeVisibleAnnotationsLorg/junit/jupiter/api/Test;@$Element_AY@='Y' org/compiere/util/Env  getCtx()Ljava/util/Properties;" $Element_AY $ %& setContext=(Ljava/util/Properties;Ljava/lang/String;Ljava/lang/String;)V (*)&org/compiere/util/LegacyLogicEvaluator +, evaluateLogic2(Lorg/compiere/util/Evaluatee;Ljava/lang/String;)Z .0/ org/junit/jupiter/api/Assertions 12 assertFalse(Z)V4Y .6 72 assertTrue9N ;*<-org/idempiere/expression/logic/LogicEvaluator>@$Element_AY@=Y@(@LineType@="C"&@CalculationType@='A,R,S'BLineTypeDCFCalculationTypeHBJALA,R,SexprLjava/lang/String;testAndQ!@$Element_BP@=Y & @AnyBPartner@=NS $Element_BPU AnyBPartnertestInX$@LineType@=C&@CalculationType@=A,R,S Z [\ testInARS(Ljava/lang/String;)V^,@LineType@='C'&@CalculationType@='A','R','S'`,@LineType@="C"&@CalculationType@="A","R","S"b!@Name@='Name 1','Name 2','Name 3' d e\ testInName123g!@Name@="Name 1","Name 2","Name 3"iNamekName 2mName 4oRqSsD testNotEqualv@C_Bpartner_ID@!0x C_Bpartner_IDz0|100~)@IsOverUnderPayment@=Y & @C_Invoice_ID@^0IsOverUnderPayment C_Invoice_ID testOrAnd2@IsSold@='Y' | @IsPurchased@='Y' & @IsSummary@='N'IsSold IsPurchased IsSummary testAndOr3@IsSummary@='N' & @ProductType@=I | @ProductType@=S ProductTypeItestAndOrGroup5@IsSummary@='N' & (@ProductType@=I | @ProductType@=S)testOrAndGroup4@IsSold@='Y' | (@IsPurchased@='Y' & @IsSummary@='N')testGT@IsLot@=Y& @M_LotCtl_ID@ > 0IsLot M_LotCtl_ID101testGE@IsLot@=Y& @M_LotCtl_ID@ >= 10099testLT"@A_Asset_ID@<1&@A_CreateAsset@='Y' A_Asset_ID A_CreateAsset1testLE#@A_Asset_ID@<=1&@A_CreateAsset@='Y'2 testNegate!$!(@IsLot@=Y & @M_LotCtl_ID@ > 0)testRE,@Identifier@ ~ '^([a-zA-Z_$][a-zA-Z\d_$]*)$' IdentifiervalidIdentifier$validIdentifier~inValidIdentifier_validIdentifier0inValidIdentifiervalidIdentifier0@Identifier@ ~ '.*\b1\b.*'1,22,11,2,32,3testValidation ; \validate .  assertNull(Ljava/lang/Object;)V java/lang/String length()I  substring(II)Ljava/lang/String; .  assertNotNull java/lang/System outLjava/io/PrintStream; java/lang/Exception  getMessage()Ljava/lang/String; java/io/PrintStream \printlnexLjava/lang/Exception;e StackMapTabletestConditionalVariable,@IsSOTrx:N@=N | @+IgnoreIsSOTrxInBPInfo:N@=YIsSOTrx+IgnoreIsSOTrxInBPInfotestValidateADMandatoryLogic DocValueLogic  ReadOnlyLogic  DisplayLogic ZoomLogicorg/compiere/model/Query AD_Column'AD_Column_ID < 1000000 AND ColumnName=?   getTrxName  O(Ljava/util/Properties;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V  setOnlyActiveRecords(Z)Lorg/compiere/model/Query; java/util/ArrayList  #java/lang/Object % &' setParameters/([Ljava/lang/Object;)Lorg/compiere/model/Query; ) *+list()Ljava/util/List; -/.java/util/List 01iterator()Ljava/util/Iterator; 354java/util/Iterator 67next()Ljava/lang/Object;9org/compiere/model/MColumn 8; <getAD_Table_ID >@?org/compiere/model/MTable ABget(I)Lorg/compiere/model/MTable; >D EFisActive()Z >;B@Jjava/lang/StringBuilder I M SELECT * IO PQappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;S FROM >U V getTableNameX WHERE 8Z [ getColumnName] IS NOT NULL I_ `toString bdcorg/compiere/util/DB efprepareStatementL(Ljava/lang/String;Ljava/lang/String;)Lorg/compiere/util/CPreparedStatement; hjijava/sql/PreparedStatement kl executeQuery()Ljava/sql/ResultSet; npojava/sql/ResultSet qr getString&(Ljava/lang/String;)Ljava/lang/String;t@SQL= v wx startsWith(Ljava/lang/String;)ZzSQL= >| }~getPO?(Ljava/sql/ResultSet;Ljava/lang/String;)Lorg/compiere/model/PO; _org/compiere/model/PO makeConcatWithConstants\(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; - add(Ljava/lang/Object;)Z n 6F h close java/lang/Throwable  addSuppressed(Ljava/lang/Throwable;)V java/sql/SQLException . fail;(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/Object; 3 FhasNext - FisEmpty - size (I)Ljava/lang/String; . 7(ZLjava/lang/String;)Vcolumns[Ljava/lang/String;queryLorg/compiere/model/Query; exceptionsLjava/util/List;columnmcLorg/compiere/model/MColumn;tableLorg/compiere/model/MTable;builderLjava/lang/StringBuilder;stmtLjava/sql/PreparedStatement;rsLjava/sql/ResultSet;poLorg/compiere/model/PO;Ljava/sql/SQLException;LocalVariableTypeTable'Ljava/util/List;.Ljava/util/List;testDateExpression@DateAcct@<@DateOrdered@  currentTimeMillis()J org/compiere/util/TimeUtil getDay(J)Ljava/sql/Timestamp;DateAcct  %?(Ljava/util/Properties;Ljava/lang/String;Ljava/sql/Timestamp;)V DateOrdered  addDays+(Ljava/sql/Timestamp;I)Ljava/sql/Timestamp;todayLjava/sql/Timestamp;testNumericExpression@QtyReserved@=0 QtyReserved  %,(Ljava/util/Properties;Ljava/lang/String;I)V0.00testEmptyStringExpression@ColumnSQL@='' ColumnSQL@ColumnSQL@!''now()testOSEnvVariableUSER  rgetenv rusernametestNestedProperty&@Processed@=Y & @M_Product_ID.IsBOM@=Y Processed  %>(Ljava/util/Properties;ILjava/lang/String;Ljava/lang/String;)V"org/compiere/util/DefaultEvaluatee  !(Lorg/compiere/model/GridTab;II)V  M_Product_ID  % -(Ljava/util/Properties;ILjava/lang/String;I)Vpchair SourceFileLogicExpressionTest.javaBootstrapMethods $java/lang/invoke/StringConcatFactory (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; , . = 2Found  logic expression with invalid syntax in AD@$env.USER@='' InnerClasses%java/lang/invoke/MethodHandles$Lookup!java/lang/invoke/MethodHandlesLookupContextEvaluatee NestMembers! + Y = 3* ?@  <L!#+'-!3#+'5!8#+'-!#+:-!3#+:5!8#+:-=L!#+'-!3#+'5!8#+'-!#+:-!3#+:5!8#+:-?LAC#EG#+:-EI#+:-EK#+:5#EF GH I*J4K>MGNQO[PeQoRyT|UVWXYZ\]^_`acde fgh'i1j;k<9MNO lPLR#T#+'-R3#+'-T3#+'-T8#+'5R8#+'-R#T#+:-R3#+:-T3#+:-T8#+:5R8#+:-brs tuv)w3x=yGzQ{[|e}oxMNV )WL*+Y]L*+Y_L*+YaL*+cfL*+c.   #()&MNe\ wh#+'-hj#+'5hl#+'-h#+:-hj#+:5hl#+:-6 '1;DNXblvwwMN[\ A#E#+'-AC#EG#+'-EI#+'5En#+'5Ep#+'5Ar#+'-A#E#+:-AC#EG#+:-EI#+:5En#+:5Ep#+:5Ar#+:-v &0:DNXblv MNt -uLw#+'-wy#+'-w{#+'5w#+:-wy#+:-w{#+:5}L##+'-3#+'-y#+'-{#+'5##+:-3#+:-y#+:-{#+:5!  *4>GQ[eoy|",-*MN L###+'-3#+'-8#+'53#+'58#+'53#+'-###+:-3#+:-8#+:53#+:58#+:53#+:-z (2<FPZdn x    MN L###+'-8#+'-#+'5p#+'53#+'5###+:-8#+:-#+:5p#+:53#+:5j"# $%&('2(<)F*P+Z,d-n.x0123456789:;<MN yL###+:-8#+:-#+:5p#+:53#+:-:CD EFG(H2I<JFKPLZMdNnOxPyvMN L###+:-3#+:58#+:53#+:58#+:53#+:-BWX YZ[(\2]<^F_P`ZadbncxdefMN lL##+'-3#+'-y#+'-#+'58#+'-##+:-3#+:-y#+:-#+:58#+:-bmn opq)r3s=tGuQv[wexozx{|}~MN pL##+:-3#+:-y#+:-{#+:5#+:-6  )3=GQ[eopmMN 4L##+'-#+'-3#+'-y#+'5##+:-#+:-3#+:-y#+:5R )3=GQ[dmwMN \L##+:-#+:-3#+:-#+:5.  )3=GQ[\YMN \L##+:53#+:5#+:-y#+:5.  )3=GQ[\YMN (L#+:-#+:5#+:5#+:-ø#+:5Ÿ#+:-Ǹ#+:5L+:-y#+:-#+:5˸#+:5͸#+:5˸#+:5ϸ#+:5Ѹ#+:-   *4>HR\fpz '(%MN 8LM,ԧN-L+,,dM,ԧN-L++ #&6      #')-74863MN ' V L##+'53#+'-3#+'5##+:53#+:-3#+:5B !, 6!A"K$U%_&i't(~)*+MN YSYSY SY SY SLY*M,WY!N+Y:66n2:,"YS$(:,: < 28:  :=:  C GHIYK:  LNRN TNWN YN\NW: : ^*a:g:f Ym:suMyu?ԧ7: *{: T Y-WJ@:   : :     :   W --$'et#2#384>5F6Z7l89:;<=>?@ABCDEFGHJ$K)L6MRN[EeQR86VW#8FZaNlO*- #  pUMN)26%  FlO*NS-$ --3+ --83>S--83>Ihn&G3--83>Ih B  --83>I --3 - VLƸMҸҲ+'-,Ҳ+'-,Ҳ+'-,׸Ҳ+'5ҸҲ+:-,Ҳ+:-,Ҳ+:-,׸Ҳ+:5V^_ abc)d3e=fGgQh_iiksl}mnopqrst MN  !L#+'-+'-+'5#+'5#+:-+:-+:5#+:5J{}~",6@LV`jt~MN L#+'5#+:5L#+'-#+'5#+:-#+:5>",0:DPZdnzMN !L+L+M,'5   !N MN LY+'-=3 Y+'5Y+:-3 Y+:56  $0;LWht MN$m  " # $